hibernate query is not working after migration to JBoss EAP 6.0.1 from EAP 4.3

Solution Unverified - Updated -

Issue

  • We have two entities with one to many relationship (Uni directional) association. [testList] is the child entity property in parent [testcreate] .
  • There is a hibernate query defined as below:
 from testcreate testcreate where testcreate.testList.Number = ? and TRUNC(testcreate.createdDate) between ? and ?
  • It was working fine with Jboss-EAP 4.3 but getting the following error when we try to deploy in EAP 6.0.1, please advise.
ERROR [org.hibernate.internal.SessionFactoryImpl] (ServerService Thread Pool -- 55) HHH000177: Error in named query: test.model.fetchTESTDetailBy: org.hibernate.QueryException: illegal attempt to dereference collection [testcreate0_.TEST_SEQ_NO.testList] with element property reference [Number] [
            from tset.model.testcreate testcreate where testcreate.testList.Number = ? and TRUNC(testcreate.createdDate) between ? and ?
        ]
        at org.hibernate.hql.internal.ast.tree.DotNode$1.buildIllegalCollectionDereferenceException(DotNode.java:68) [hibernate-core-4.2.0.Final-redhat-1.jar:4.2.0.Final-redhat-1]
        at org.hibernate.hql.internal.ast.tree.DotNode.checkLhsIsNotCollection(DotNode.java:550) [hibernate-core-4.2.0.Final-redhat-1.jar:4.2.0.Final-redhat-1]
        at org.hibernate.hql.internal.ast.tree.DotNode.resolve(DotNode.java:246) [hibernate-core-4.2.0.Final-redhat-1.jar:4.2.0.Final-redhat-1]
        at org.hibernate.hql.internal.ast.tree.FromReferenceNode.resolve(FromReferenceNode.java:118) [hibernate-core-4.2.0.Final-redhat-1.jar:4.2.0.Final-redhat-1]
        at org.hibernate.hql.internal.ast.tree.FromReferenceNode.resolve(FromReferenceNode.java:114) [hibernate-core-4.2.0.Final-redhat-1.jar:4.2.0.Final-redhat-1]
        at org.hibernate.hql.internal.ast.HqlSqlWalker.resolve(HqlSqlWalker.java:881) [hibernate-core-4.2.0.Final-redhat-1.jar:4.2.0.Final-redhat-1]
        at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.expr(HqlSqlBaseWalker.java:1264) [hibernate-core-4.2.0.Final-redhat-1.jar:4.2.0.Final-redhat-1]
        at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.exprOrSubquery(HqlSqlBaseWalker.java:4426) [hibernate-core-4.2.0.Final-redhat-1.jar:4.2.0.Final-redhat-1]
        at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.comparisonExpr(HqlSqlBaseWalker.java:3898) [hibernate-core-4.2.0.Final-redhat-1.jar:4.2.0.Final-redhat-1]
        at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.logicalExpr(HqlSqlBaseWalker.java:2076) [hibernate-core-4.2.0.Final-redhat-1.jar:4.2.0.Final-redhat-1]
        at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.logicalExpr(HqlSqlBaseWalker.java:2001) [hibernate-core-4.2.0.Final-redhat-1.jar:4.2.0.Final-redhat-1]
        at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.whereClause(HqlSqlBaseWalker.java:794) [hibernate-core-4.2.0.Final-redhat-1.jar:4.2.0.Final-redhat-1]
        at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.query(HqlSqlBaseWalker.java:595) [hibernate-core-4.2.0.Final-redhat-1.jar:4.2.0.Final-redhat-1]
        at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.selectStatement(HqlSqlBaseWalker.java:299) [hibernate-core-4.2.0.Final-redhat-1.jar:4.2.0.Final-redhat-1]
        at org.hibernate.hql.internal.antlr.HqlSqlBaseWalker.statement(HqlSqlBaseWalker.java:247) [hibernate-core-4.2.0.Final-redhat-1.jar:4.2.0.Final-redhat-1]
        at org.hibernate.hql.internal.ast.QueryTranslatorImpl.analyze(QueryTranslatorImpl.java:248) [hibernate-core-4.2.0.Final-redhat-1.jar:4.2.0.Final-redhat-1]
        at org.hibernate.hql.internal.ast.QueryTranslatorImpl.doCompile(QueryTranslatorImpl.java:183) [hibernate-core-4.2.0.Final-redhat-1.jar:4.2.0.Final-redhat-1]
        at org.hibernate.hql.internal.ast.QueryTranslatorImpl.compile(QueryTranslatorImpl.java:136) [hibernate-core-4.2.0.Final-redhat-1.jar:4.2.0.Final-redhat-1]
        at org.hibernate.engine.query.spi.HQLQueryPlan.<init>(HQLQueryPlan.java:105) [hibernate-core-4.2.0.Final-redhat-1.jar:4.2.0.Final-redhat-1]
        at org.hibernate.engine.query.spi.HQLQueryPlan.<init>(HQLQueryPlan.java:80) [hibernate-core-4.2.0.Final-redhat-1.jar:4.2.0.Final-redhat-1]
        at org.hibernate.engine.query.spi.QueryPlanCache.getHQLQueryPlan(QueryPlanCache.java:168) [hibernate-core-4.2.0.Final-redhat-1.jar:4.2.0.Final-redhat-1]
        at org.hibernate.internal.SessionFactoryImpl.checkNamedQueries(SessionFactoryImpl.java:1071) [hibernate-core-4.2.0.Final-redhat-1.jar:4.2.0.Final-redhat-1]
        at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:519) [hibernate-core-4.2.0.Final-redhat-1.jar:4.2.0.Final-redhat-1]
        at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1750) [hibernate-core-4.2.0.Final-redhat-1.jar:4.2.0.Final-redhat-1]
        at org.apache.catalina.core.StandardContext.contextListenerStart(StandardContext.java:3339) [jbossweb-7.2.0.Final-redhat-1.jar:7.2.0.Final-redhat-1]
        at org.apache.catalina.core.StandardContext.start(StandardContext.java:3777) [jbossweb-7.2.0.Final-redhat-1.jar:7.2.0.Final-redhat-1]
        at org.jboss.as.web.deployment.WebDeploymentService.doStart(WebDeploymentService.java:156) [jboss-as-web-7.2.0.Final-redhat-8.jar:7.2.0.Final-redhat-8]
        at org.jboss.as.web.deployment.WebDeploymentService.access$000(WebDeploymentService.java:60) [jboss-as-web-7.2.0.Final-redhat-8.jar:7.2.0.Final-redhat-8]
        at org.jboss.as.web.deployment.WebDeploymentService$1.run(WebDeploymentService.java:93) [jboss-as-web-7.2.0.Final-redhat-8.jar:7.2.0.Final-redhat-8]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) [rt.jar:1.7.0_25]
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) [rt.jar:1.7.0_25]
        at java.util.concurrent.FutureTask.run(FutureTask.java:166) [rt.jar:1.7.0_25]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_25]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_25]
        at java.lang.Thread.run(Thread.java:724) [rt.jar:1.7.0_25]
        at org.jboss.threads.JBossThread.run(JBossThread.java:122)

11:16:03,044 INFO  [stdout] (ServerService Thread Pool -- 55) Cause of the exception is..
11:16:03,045 INFO  [stdout] (ServerService Thread Pool -- 55)
11:16:03,045 INFO  [stdout] (ServerService Thread Pool -- 55)
11:16:03,045 INFO  [stdout] (ServerService Thread Pool -- 55) PersistenceException
11:16:03,045 INFO  [stdout] (ServerService Thread Pool -- 55)
11:16:03,045 INFO  [stdout] (ServerService Thread Pool -- 55) +----------------------------------------------------------+
11:16:03,046 INFO  [stdout] (ServerService Thread Pool -- 55) org.hibernate.HibernateException
11:16:03,046 INFO  [stdout] (ServerService Thread Pool -- 55) +----------------------------------------------------------+
11:16:03,046 INFO  [stdout] (ServerService Thread Pool -- 55)     org.hibernate.HibernateException: Errors in named queries: test.model.fetchTESTDetailBy
11:16:03,046 INFO  [stdout] (ServerService Thread Pool -- 55)   at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:528)

Environment

  • Red Hat JBoss Enterprise Application Platform (EAP)
    • 6.0.1

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase of over 48,000 articles and solutions.

Current Customers and Partners

Log in for full access

Log In
Close

Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.