SQLGrammarException when invoking REST Query API

Solution Verified - Updated -

Issue

When following endpoints are invoked

http://ipaddress:8080/business-central/rest/task/query?potentialOwner=bpmsAdmin
http://ipaddress:8080/business-central/rest/task/query?processinstanceid=1

The call ends in following error:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <exception>
    <status>FAILURE</status>
    <url>http://<ip address>:8080/business-central/rest/task/query?processinstanceid=1</url>
    <message>PersistenceException thrown with message 'org.hibernate.exception.SQLGrammarException: could not prepare statement'</message>
    <stackTrace>org.kie.remote.services.rest.exception.KieRemoteRestOperationException: org.hibernate.exception.SQLGrammarException: could not prepare statement
                at org.kie.remote.services.rest.exception.KieRemoteRestOperationException.internalServerError(KieRemoteRestOperationException.java:151)
                at org.kie.remote.services.cdi.ProcessRequestBean.doTaskOperation(ProcessRequestBean.java:419)
                at org.kie.remote.services.cdi.ProcessRequestBean.doRestTaskOperation(ProcessRequestBean.java:426)
                at org.kie.remote.services.cdi.ProcessRequestBean$Proxy$_$$_WeldClientProxy.doRestTaskOperation(ProcessRequestBean$Proxy$_$$_WeldClientProxy.java)
                at org.kie.remote.services.rest.ResourceBase.doRestTaskOperationWithTaskId(ResourceBase.java:600)
                at org.kie.remote.services.rest.QueryResourceImpl.doTaskSummaryQuery(QueryResourceImpl.java:158)
                at org.kie.remote.services.rest.QueryResourceImpl.taskSummaryQuery(QueryResourceImpl.java:130)
                at org.kie.remote.services.rest.QueryResourceImpl$Proxy$_$$_WeldClientProxy.taskSummaryQuery(QueryResourceImpl$Proxy$_$$_WeldClientProxy.java)
                at org.kie.remote.services.rest.TaskResourceImpl.query(TaskResourceImpl.java:116)
                at org.kie.remote.services.rest.TaskResourceImpl$Proxy$_$$_WeldClientProxy.query(TaskResourceImpl$Proxy$_$$_WeldClientProxy.java)
                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
                at java.lang.reflect.Method.invoke(Method.java:497)
                at org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:168)
                at org.jboss.resteasy.core.ResourceMethod.invokeOnTarget(ResourceMethod.java:269)
                at org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:227)
                at org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:216)
                at org.jboss.resteasy.core.SynchronousDispatcher.getResponse(SynchronousDispatcher.java:541)
                at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:523)
                at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:125)
                at org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:208)
                at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:55)
                at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:50)
                at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:295)
                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
                at org.kie.remote.services.rest.jaxb.DynamicJaxbContextFilter.doFilter(DynamicJaxbContextFilter.java:63)
                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246)
                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
                at org.uberfire.ext.security.server.BasicAuthSecurityFilter.doFilter(BasicAuthSecurityFilter.java:53)
                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246)
                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
                at org.uberfire.ext.security.server.SecureHeadersFilter.doFilter(SecureHeadersFilter.java:53)
                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246)
                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
                at org.uberfire.ext.security.server.SecurityIntegrationFilter.doFilter(SecurityIntegrationFilter.java:45)
                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246)
                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
                at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:231)
                at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:149)
                at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:420)
                at org.jboss.as.jpa.interceptor.WebNonTxEmCloserValve.invoke(WebNonTxEmCloserValve.java:50)
                at org.jboss.as.jpa.interceptor.WebNonTxEmCloserValve.invoke(WebNonTxEmCloserValve.java:50)
                at org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:169)
                at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:150)
                at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:97)
                at org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:419)
                at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:102)
                at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344)
                at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:854)
                at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:653)
                at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:926)
                at java.lang.Thread.run(Thread.java:745)
Caused by: javax.persistence.PersistenceException: org.hibernate.exception.SQLGrammarException: could not prepare statement
                at org.hibernate.ejb.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1387)
                at org.hibernate.ejb.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1310)
                at org.hibernate.ejb.QueryImpl.getResultList(QueryImpl.java:277)
                at org.hibernate.ejb.criteria.CriteriaQueryCompiler$3.getResultList(CriteriaQueryCompiler.java:254)
                at org.jbpm.services.task.persistence.TaskQueryCriteriaUtil.createQueryAndCallApplyMetaCriteriaAndGetResult(TaskQueryCriteriaUtil.java:611)
                at org.jbpm.services.task.persistence.TaskQueryCriteriaUtil.doCriteriaQuery(TaskQueryCriteriaUtil.java:223)
                at org.jbpm.services.task.persistence.JPATaskPersistenceContext.doTaskSummaryCriteriaQuery(JPATaskPersistenceContext.java:487)
                at org.jbpm.services.task.impl.TaskQueryServiceImpl.query(TaskQueryServiceImpl.java:633)
                at org.jbpm.services.task.impl.TaskQueryServiceImpl.getTasksByVariousFields(TaskQueryServiceImpl.java:589)
                at org.jbpm.services.task.commands.GetTasksByVariousFieldsCommand.execute(GetTasksByVariousFieldsCommand.java:241)
                at org.jbpm.services.task.commands.GetTasksByVariousFieldsCommand.execute(GetTasksByVariousFieldsCommand.java:43)
                at org.jbpm.services.task.commands.TaskCommandExecutorImpl$SelfExecutionCommandService.execute(TaskCommandExecutorImpl.java:65)
                at org.drools.core.command.impl.AbstractInterceptor.executeNext(AbstractInterceptor.java:41)
                at org.jbpm.services.task.persistence.TaskTransactionInterceptor.execute(TaskTransactionInterceptor.java:69)
                at org.drools.core.command.impl.AbstractInterceptor.executeNext(AbstractInterceptor.java:41)
                at org.drools.persistence.jta.TransactionLockInterceptor.execute(TransactionLockInterceptor.java:73)
                at org.drools.core.command.impl.AbstractInterceptor.executeNext(AbstractInterceptor.java:41)
                at org.drools.persistence.jpa.OptimisticLockRetryInterceptor.execute(OptimisticLockRetryInterceptor.java:82)
                at org.jbpm.services.task.commands.TaskCommandExecutorImpl.execute(TaskCommandExecutorImpl.java:40)
                at org.jbpm.services.task.impl.command.CommandBasedTaskService.execute(CommandBasedTaskService.java:156)
                at org.jbpm.kie.services.impl.UserTaskServiceImpl.execute(UserTaskServiceImpl.java:923)
                at org.jbpm.services.cdi.impl.UserTaskServiceCDIImpl$Proxy$_$$_WeldClientProxy.execute(UserTaskServiceCDIImpl$Proxy$_$$_WeldClientProxy.java)
                at org.kie.remote.services.cdi.ProcessRequestBean.doTaskOperation(ProcessRequestBean.java:411)
                ... 52 more
Caused by: org.hibernate.exception.SQLGrammarException: could not prepare statement
                at org.hibernate.exception.internal.SQLStateConversionDelegate.convert(SQLStateConversionDelegate.java:123)
                at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:49)
                at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:124)
                at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$StatementPreparationTemplate.prepareStatement(StatementPreparerImpl.java:193)
                at org.hibernate.engine.jdbc.internal.StatementPreparerImpl.prepareQueryStatement(StatementPreparerImpl.java:157)
                at org.hibernate.loader.Loader.prepareQueryStatement(Loader.java:1881)
                at org.hibernate.loader.Loader.executeQueryStatement(Loader.java:1858)
                at org.hibernate.loader.Loader.executeQueryStatement(Loader.java:1838)
                at org.hibernate.loader.Loader.doQuery(Loader.java:906)
                at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:348)
                at org.hibernate.loader.Loader.doList(Loader.java:2550)
                at org.hibernate.loader.Loader.doList(Loader.java:2536)
                at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2366)
                at org.hibernate.loader.Loader.list(Loader.java:2361)
                at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:495)
                at org.hibernate.hql.internal.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:357)
                at org.hibernate.engine.query.spi.HQLQueryPlan.performList(HQLQueryPlan.java:198)
                at org.hibernate.internal.SessionImpl.list(SessionImpl.java:1230)
                at org.hibernate.internal.QueryImpl.list(QueryImpl.java:101)
                at org.hibernate.ejb.QueryImpl.getResultList(QueryImpl.java:268)
                ... 72 more
Caused by: org.h2.jdbc.JdbcSQLException: Column "ORGANIZATI2_.ID" not found; SQL statement:
select distinct taskimpl0_.id as col_0_0_, taskimpl0_.name as col_1_0_, taskimpl0_.subject as col_2_0_, taskimpl0_.description as col_3_0_, taskimpl0_.status as col_4_0_, taskimpl0_.priority as col_5_0_, taskimpl0_.skipable as col_6_0_, taskimpl0_.actualOwner_id as col_7_0_, taskimpl0_.createdBy_id as col_8_0_, taskimpl0_.createdOn as col_9_0_, taskimpl0_.activationTime as col_10_0_, taskimpl0_.expirationTime as col_11_0_, taskimpl0_.processId as col_12_0_, taskimpl0_.processSessionId as col_13_0_, taskimpl0_.processInstanceId as col_14_0_, taskimpl0_.deploymentId as col_15_0_, taskimpl0_.subTaskStrategy as col_16_0_, taskimpl0_.parentId as col_17_0_ from Task taskimpl0_ where (taskimpl0_.actualOwner_id=? or taskimpl0_.createdBy_id=? or organizati2_.id=? or organizati2_.id in (? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ?) or organizati4_.id=? or organizati4_.id in (? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ?) or organizati6_.id=? or organizati6_.id in (? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ?)) and taskimpl0_.processInstanceId=1 order by taskimpl0_.id asc limit ? [42122-168]
                at org.h2.message.DbException.getJdbcSQLException(DbException.java:329)
                at org.h2.message.DbException.get(DbException.java:169)
                at org.h2.message.DbException.get(DbException.java:146)
                at org.h2.expression.ExpressionColumn.optimize(ExpressionColumn.java:138)
                at org.h2.expression.Comparison.optimize(Comparison.java:159)
                at org.h2.expression.ConditionAndOr.optimize(ConditionAndOr.java:127)
                at org.h2.expression.ConditionAndOr.optimize(ConditionAndOr.java:126)
                at org.h2.expression.ConditionAndOr.optimize(ConditionAndOr.java:126)
                at org.h2.expression.ConditionAndOr.optimize(ConditionAndOr.java:126)
                at org.h2.expression.ConditionAndOr.optimize(ConditionAndOr.java:126)
                at org.h2.expression.ConditionAndOr.optimize(ConditionAndOr.java:126)
                at org.h2.expression.ConditionAndOr.optimize(ConditionAndOr.java:126)
                at org.h2.command.dml.Select.prepare(Select.java:802)
                at org.h2.command.Parser.prepareCommand(Parser.java:218)
                at org.h2.engine.Session.prepareLocal(Session.java:415)
                at org.h2.engine.Session.prepareCommand(Session.java:364)
                at org.h2.jdbc.JdbcConnection.prepareCommand(JdbcConnection.java:1109)
                at org.h2.jdbc.JdbcPreparedStatement.&lt;init&gt;(JdbcPreparedStatement.java:74)
                at org.h2.jdbc.JdbcConnection.prepareStatement(JdbcConnection.java:626)
                at org.jboss.jca.adapters.jdbc.BaseWrapperManagedConnection.doPrepareStatement(BaseWrapperManagedConnection.java:748)
                at org.jboss.jca.adapters.jdbc.BaseWrapperManagedConnection.prepareStatement(BaseWrapperManagedConnection.java:734)
                at org.jboss.jca.adapters.jdbc.WrappedConnection.prepareStatement(WrappedConnection.java:405)
                at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$5.doPrepare(StatementPreparerImpl.java:159)
                at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$StatementPreparationTemplate.prepareStatement(StatementPreparerImpl.java:183)
                ... 88 more
</stackTrace>
</exception>

Environment

  • Red Hat JBoss BPM Suite
    • 6.2.x

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.

Current Customers and Partners

Log in for full access

Log In

New to Red Hat?

Learn more about Red Hat subscriptions

Using a Red Hat product through a public cloud?

How to access this content