Рассмотрим следующие сущности.
public class Product{
int id;
Date effectiveDate;
Date expiryDate;
Set<Inventory> productInventories;
}
public class Inventory{
int invId;
Date inventoryDate;
boolean soldOut;
int availableQuantity;
Product product;
}
Вышеуказанные две сущности соответствуют таблицам Product и Inventory соответственно.
Теперь мне нужно получить Продукты на основе определенных условий в сущности Продукт, а также в Инвентаризации.
Например, для условий указаны дата начала поездки, а дата окончания поездки должна соответствовать действительности и истечению срока действия.дата продукта.Инвентаризация продукта должна иметь в наличииQuantity> 0.
. Для этого как я могу написать hql.Могу ли я написать что-то вроде следующего
Query query = session.createQuery("from Product As product " +
"where product.effectiveDate <= :travelStartDate "+
"AND product.expiryDate >= :travelEndDate " +
"AND product.productInventories.availableQuantity >0 ");
Когда я выполняю вышеупомянутый запрос, он выдает незаконную попытку разыменования исключения из коллекции.