История изменений
Исправление php-coder, (текущая версия) :
Есть пара вариантов:
1) Объявить AccountEntity.card и AccountEntity.holder с FetchType.EAGER (достаточно просто убрать FetchType.LAZY)
2) Использовать FETCH JOIN: http://docs.oracle.com/cd/E17904_01/apirefs.1111/e13946/ejb3_langref.html#ejb...
3) Использовать SELECT NEW. В этом случае AccountDao.getAccountByEan() будет возвращать не сущность, а сразу Account. Для этого понадобится в Account добавить конструктор, который бы принимал AccountEntity и делал все то, что сейчас делает extractAccount(). Запрос придётся переписать в стиле
select new a.b.c.Account(a) from AccountEntity a where a.ean = :ean"
Пример есть здесь: http://vard-lokkur.blogspot.ru/2013/05/jpa-basic-projections.html
Исходная версия php-coder, :
Есть пара вариантов:
1) Объявить AccountEntity.card и AccountEntity.holder с FetchType.EAGER (достаточно просто убрать FetchType.LAZY)
2) Использовать JOIN FETCH: http://docs.oracle.com/cd/E17904_01/apirefs.1111/e13946/ejb3_langref.html#ejb...
3) Использовать SELECT NEW. В этом случае AccountDao.getAccountByEan() будет возвращать не сущность, а сразу Account. Для этого понадобится в Account добавить конструктор, который бы принимал AccountEntity и делал все то, что сейчас делает extractAccount(). Запрос придётся переписать в стиле
select new a.b.c.Account(a) from AccountEntity a where a.ean = :ean"
Пример есть здесь: http://vard-lokkur.blogspot.ru/2013/05/jpa-basic-projections.html