[
http://opensource.atlassian.com/projects/hibernate/browse/HHH-2225?page=c...
]
Chris Nash commented on HHH-2225:
---------------------------------
I've ran into this as well. The main problem for me is the sort of mapping that needs
a formula is an ideal candidate for a native SQL query to optimize.
I understand no progress has been made on this issue for three years, but is there even a
workaround? The object I'm currently having difficulties with has other collections in
it, so I'd much rather use query.addEntity() for Hibernate to map the fields and
lazy-load the collections, than have to resort to straight JDBC.
NPE when eager fetching joined component with native SQL query
--------------------------------------------------------------
Key: HHH-2225
URL:
http://opensource.atlassian.com/projects/hibernate/browse/HHH-2225
Project: Hibernate Core
Issue Type: Bug
Components: query-sql
Affects Versions: 3.2.0.ga
Reporter: Christian Bauer
Priority: Minor
Item -> many-to-one -> User -> joined component -> billingAddress
This:
result = session.createSQLQuery("select {i.*}, {u.*}, {ba.*} from ITEM i" +
" join USERS u on i.SELLER_ID =
u.USER_ID" +
" left join BILLING_ADDRESS ba on u.USER_ID
= ba.USER_ID" +
" where u.USERNAME = :uname")
.addEntity("i", Item.class)
.addJoin("u", "i.seller")
.addJoin("ba", "u.billingAddress")
fails with:
java.lang.NullPointerException
at org.hibernate.loader.DefaultEntityAliases.<init>(DefaultEntityAliases.java:37)
at
org.hibernate.loader.custom.sql.SQLQueryReturnProcessor.generateCustomReturns(SQLQueryReturnProcessor.java:283)
at org.hibernate.loader.custom.sql.SQLCustomQuery.<init>(SQLCustomQuery.java:129)
at
org.hibernate.engine.query.NativeSQLQueryPlan.<init>(NativeSQLQueryPlan.java:43)
at
org.hibernate.engine.query.QueryPlanCache.getNativeSQLQueryPlan(QueryPlanCache.java:114)
at
org.hibernate.impl.AbstractSessionImpl.getNativeSQLQueryPlan(AbstractSessionImpl.java:137)
at org.hibernate.impl.AbstractSessionImpl.list(AbstractSessionImpl.java:142)
at org.hibernate.impl.SQLQueryImpl.list(SQLQueryImpl.java:150)
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://opensource.atlassian.com/projects/hibernate/secure/Administrators....
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira