spring-data-mongodb
spring-data-mongodb copied to clipboard
QueryDSL-style queries don't honor targetType @Field attribute
I have a @Document class, Foo with a field like this:
@Field(value = "bar", targetType = FieldType.OBJECT_ID)
String bar;
I'm using QueryDSL so I also end up with a QFoo generated class. In another class, I have a field r whose type is a @Repository interface R that implements QuerydslPredicateExecutor.
When I call r.findAll(QFoo.foo.bar.eq("...") I expect the "..." to be converted to an ObjectId as part of the construction of the MongoDB query but instead it gets passed through as a string--i.e., the query looks like:
{bar: "..."}
so the query doesn't work as expected.
sorry for long silence. What version of data-mongo are you referring to please? Everything seems to work as designed on current main.
I observed the problem on version 3.4.2.