Comments (2)
Test to reproduce bug :
public class Issue33Test {
private MongoCollection collection;
@Before
public void setUp() throws Exception {
Mongo mongo = new Mongo();
DB db = mongo.getDB("tests");
collection = new Jongo(db).getCollection("Users");
}
@After
public void tearDown() throws Exception {
collection.drop();
}
@Test
public void canRemoveCustomObjectId() throws Exception {
//given
User user = new User();
ObjectId customId = new ObjectId("4f92d1ae44ae2dac4527d49b");
user.setId(customId);
user.setName("johnny");
//when
collection.save(user);
User result = collection.findOne("{}").as(User.class);
//then
assertThat(result.getId()).isEqualTo(customId);
}
public static class User {
private ObjectId _id;
private String name;
public ObjectId getId() {
return _id;
}
public void setId(ObjectId _id) {
this._id = _id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
}
from jongo.
Jackson handles _id property and getId() method as two differents values.
An ObjectIdDeserializer is missing and Jackson is not able to inject a valid ObjectId through setId(...)
from jongo.
Related Issues (20)
- Add TravisCI build status on readme HOT 1
- [security] Upgrade Jackson Databind to 2.9.7 or higher HOT 2
- NPE when serialising root context HOT 1
- Reactive version? HOT 1
- Aggregation compatibility HOT 1
- Compatibility with latest mongo-java-driver HOT 3
- Any News? HOT 4
- Find query with field value containing a single quote not supported HOT 6
- How to get new JongoNative for Gradle? HOT 1
- generating and setting the id value of an annotated field should be moved to the ObjectIdUpdater HOT 4
- How to escape # in query HOT 2
- How to provide index hint for updating a document using update
- Deprecated method in the official documentation HOT 1
- All positional operator `$[]` throws `JsonParseException` in 1.5.0 HOT 4
- No updateMany() query HOT 1
- arrayFilters not working to update query in Kotlin
- Support for java 11 or higher HOT 1
- New CVE-2020-36518 (high) with jackson-databind HOT 2
- Is this project dead? HOT 1
- Escape `#`. `Not enough parameters passed to query` error
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from jongo.