У меня следующий график:критерии запроса с ограничением через объединенный подкласса проблем
OrderLine
OrderLineExtension
OrderLineExtensionA
OrderLineExtensionB
OrderLineExtensionC
OrderLine содержит набор OrderLineExtension.
OrderLineExtension определяется как: @Inheritance (стратегия = InheritanceType.JOINED) и обозначен как единое целое, и является абстрактным
таблица создается в БД для каждого из этих классов в иерархии.
Я пытаюсь выполнить запрос, в котором имя элемента на OrderLine является «item», но где «orderRef» порядкаReferenceNumberAxtensionA.
Я не уверен, как пройти от OrderLine до OrderLineExtensionA, поскольку нет ссылки на java от OrderLineExtension до OrderLineExtensionA.
Я до сих пор получил это, что, конечно, не работает.
filter=DetachedCriteria.forClass(OrderLine.class);
.add(Restrictions.eq("item", "item"));
.createCriteria("orderLineExtension")
.add(Restrictions.eq("orderReferenceNumber", "orderRef"));
Это не удается, как спящий режим жалуется, что не может найти orderReferenceNumber в классе orderLineExtension это верно, как это в orderLineExtensionA. Но как мне перейти на расширение? Я не могу вложить другую createCriteria, поскольку в суперклассе нет ссылки на подкласс.
Любая помощь будет оценена по достоинству.