Closed
Description
Simone Coletti opened DATAMONGO-1394 and commented
Trying to use eq on reference's $id, with no luck.
This is an example code:
public class Book {
@DBRef
private Library library;
}
public class Library {
@Id
private String id;
}
String library_id = [SOME_ID];
QBook book = QBook.book;
BooleanExpression exp = book.library.id.eq(library_id);
List<Book> list = bookRepository.findAll(exp); // EMPTY
Doing:
Library library = libraryRepository.findById(library_id);
QBook book = QBook.book;
BooleanExpression exp = book.library.eq(library);
List<Book> list = bookRepository.findAll(exp); // EXPECTED ITEMS
or:
List<Book> list = bookRepository.findByLibraryId(library_id) // EXPECTED ITEMS
Affects: 1.8.1 (Gosling SR1)
Reference URL: #203
Issue Links:
- DATAMONGO-1810 Querydsl predicate using IN operator fails for DBRef
Referenced from: pull request #373