IllegalStateException: Unexpected AST: org.hibernate.hql.internal.ast.tree.SqlNode executing HQL SELECT with a constructor expression containing null in JBoss EAP
Issue
-
Executing an HQL query using a constructor expression in the select clause where
Employeeis an entity typeSELECT new support.hibernate.dto.Pair(e, null) FROM Employee e WHERE e.name = :name -
After applying JBoss EAP 6.4 cumulative patch 10, encountering the following failure
java.lang.IllegalStateException: Unexpected AST: org.hibernate.hql.internal.ast.tree.SqlNode \-[NULL] SqlNode: 'null' at org.hibernate.hql.internal.ast.tree.SelectExpressionList.collectSelectExpressions(SelectExpressionList.java:55) at org.hibernate.hql.internal.ast.tree.ConstructorNode.resolveConstructorArgumentTypes(ConstructorNode.java:159) at org.hibernate.hql.internal.ast.tree.ConstructorNode.prepare(ConstructorNode.java:142) ... at org.hibernate.internal.SessionImpl.createQuery(SessionImpl.java:1739) at org.hibernate.ejb.AbstractEntityManagerImpl.createQuery(AbstractEntityManagerImpl.java:291) ... -
After applying JBoss EAP 7.0 cumulative patch 3, encountering the following failure
java.lang.NullPointerException at org.hibernate.hql.internal.NameGenerator.generateColumnNames(NameGenerator.java:27) at org.hibernate.hql.internal.ast.util.SessionFactoryHelper.generateColumnNames(SessionFactoryHelper.java:418) at org.hibernate.hql.internal.ast.tree.SelectClause.initializeColumnNames(SelectClause.java:267) ... at org.hibernate.internal.SessionImpl.createQuery(SessionImpl.java:1894) at org.hibernate.jpa.spi.AbstractEntityManagerImpl.createQuery(AbstractEntityManagerImpl.java:291) ...
Environment
- Red Hat JBoss Enterprise Application Platform (EAP)
- 7.0 CP03 (and later)
- 6.4 CP10 (and later)
- Hibernate
- 5.0.11 (and later)
- 4.2.24 (and later)
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase of over 48,000 articles and solutions.
Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.
