-
1. Re: Problem with jBPM 3.2.2 + JBoss AS 4.2.2
kukeltje Nov 10, 2007 5:24 PM (in response to neville.sequeira)did you try this: (it's in the wiki)
Additional Notes for jBPM 3.2.1
If you want to deploy the jBPM 3.2.1 web app to a JBoss AS 4.2.x version, the easiest way at the moment would be to checkout the latest version from CVS, because the build.xml inside the jbpm.3/console branch has a custom target for building a 4.2-compatible web-app:
ant war-4.2.x -
2. Re: Problem with jBPM 3.2.2 + JBoss AS 4.2.2
neville.sequeira Nov 11, 2007 12:28 AM (in response to neville.sequeira)@kukeltje
Thanks for the pointer.
I got jbpm.3 source code and built jbpm console usingant war-4.2.x
. Deployed that on JBoss AS 4.2.2. But, now, every page in the application shows me the following message:
Now on starting JBoss AS, I keep getting the following message on the command prompt every few seconds:00:15:46,146 ERROR [JobExecutorThread] exception in job executor thread. waiting 160000 milliseconds java.lang.IllegalStateException: No data type for node: org.hibernate.hql.ast.tree.MethodNode \-[METHOD_CALL] MethodNode: '(' +-[METHOD_NAME] IdentNode: 'stddev' {originalText=stddev} \-[EXPR_LIST] SqlNode: 'exprList' \-[DOT] DotNode: 'nodelog0_.DURATION_' {propertyName=duration,dereferenceType=4,propertyPath=duration,path=nl.dur ation,tableAlias=nodelog0_,className=org.jbpm.graph.log.NodeLog,classAlias=nl} +-[ALIAS_REF] IdentNode: 'nodelog0_.ID_' {alias=nl, className=org.jbpm.graph.log.NodeLog, tableAlias=nodelog0_ } \-[IDENT] IdentNode: 'duration' {originalText=duration} at org.hibernate.hql.ast.tree.SelectClause.initializeExplicitSelectClause(SelectClause.java:145) at org.hibernate.hql.ast.HqlSqlWalker.useSelectClause(HqlSqlWalker.java:705) at org.hibernate.hql.ast.HqlSqlWalker.processQuery(HqlSqlWalker.java:529) at org.hibernate.hql.antlr.HqlSqlBaseWalker.query(HqlSqlBaseWalker.java:645) at org.hibernate.hql.antlr.HqlSqlBaseWalker.selectStatement(HqlSqlBaseWalker.java:281) at org.hibernate.hql.antlr.HqlSqlBaseWalker.statement(HqlSqlBaseWalker.java:229) at org.hibernate.hql.ast.QueryTranslatorImpl.analyze(QueryTranslatorImpl.java:228) at org.hibernate.hql.ast.QueryTranslatorImpl.doCompile(QueryTranslatorImpl.java:160) at org.hibernate.hql.ast.QueryTranslatorImpl.compile(QueryTranslatorImpl.java:111) at org.hibernate.engine.query.HQLQueryPlan.<init>(HQLQueryPlan.java:77) at org.hibernate.engine.query.HQLQueryPlan.<init>(HQLQueryPlan.java:56) at org.hibernate.engine.query.QueryPlanCache.getHQLQueryPlan(QueryPlanCache.java:72) at org.hibernate.impl.SessionFactoryImpl.checkNamedQueries(SessionFactoryImpl.java:402) at org.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:352) at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1294) at org.jbpm.persistence.db.DbPersistenceServiceFactory.getSessionFactory(DbPersistenceServiceFactory.java:91) at org.jbpm.persistence.db.DbPersistenceService.getSessionFactory(DbPersistenceService.java:95) at org.jbpm.persistence.db.DbPersistenceService.getSession(DbPersistenceService.java:99) at org.jbpm.persistence.db.DbPersistenceService.getJobSession(DbPersistenceService.java:359) at org.jbpm.JbpmContext.getJobSession(JbpmContext.java:563) at org.jbpm.job.executor.JobExecutorThread.acquireJobs(JobExecutorThread.java:112) at org.jbpm.job.executor.JobExecutorThread.run(JobExecutorThread.java:58)
The message also repeats at increasing time intervals in the command prompt from where I started JBoss AS. First I see it in 5 seconds, then in 10 seconds, then in 20 seconds and so on. -
3. Re: Problem with jBPM 3.2.2 + JBoss AS 4.2.2
kukeltje Nov 11, 2007 5:04 AM (in response to neville.sequeira)I did not try it on JBoss AS 4.2.2 (Yet) so it might be related to that. on JBoss AS 4.2.1 GA it works. It looks like it's hibernate related, but I guess you already found that out yourself ;-). Coming days I have no time to try it out on 4.2.2, sorry. So you might experiment a little with this yourself. From http://opensource.atlassian.com/projects/hibernate/browse/HHH-1218 it might even be related to a wrong dialect in hibernate
-
4. Re: Problem with jBPM 3.2.2 + JBoss AS 4.2.2
neville.sequeira Nov 11, 2007 9:29 AM (in response to neville.sequeira)Unfortunately, I get the exact same result on JBoss AS 4.2.1 GA
Yes, it seems to be someting related to Hibernate.
Thanks for you help kukeltje. I will see what other things I can try. -
5. Re: Problem with jBPM 3.2.2 + JBoss AS 4.2.2
neville.sequeira Nov 11, 2007 8:55 PM (in response to neville.sequeira)It seems the root cause is the following query defined in the file org/jbpm/db/hibernate.queries.hbm.xml (to be found in jbpm-jpdl.jar) :
<query name="Simulation.calculateAverageTimeForDecisions"> <![CDATA[ select nl.node.id, nl.node.name, count(nl.leave), avg(nl.duration), min(nl.duration), max(nl.duration), stddev(nl.duration) from org.jbpm.graph.log.NodeLog nl where nl.node.processDefinition = :processDefinition and nl.node.class = org.jbpm.graph.node.Decision and time(nl.enter) > time(:fromTime) and time(nl.enter) < time(:tillTime) group by nl.node ]]> </query>
jBPM Job Executor is attemting to execute this query every so often. However, on going through hibernate soure code for org.hibernate.dialect.HSQLDialect, the problem seems to be that this dialect (HSQLDialect) does not invoke registerFunction for the function named 'stddev' :-(
In fact, the function 'stddev' is being registered for only DB2, Oracle8i, Oracle9 and PostgresSQL dialects.
The issue did not exist in earlier versions of jBPM source code.
This is a weird state of affairs - jBPM code is sort of ahead of the Hibernate code it depends on?
Any ideas for how to address this will be highly appreciated? -
6. Re: Problem with jBPM 3.2.2 + JBoss AS 4.2.2
kukeltje Nov 12, 2007 4:44 AM (in response to neville.sequeira)Did you do a checkout of cvs-head? Or the 3.2.2 tagged version? The former is under development, but still it should not happen. I'll notify the developer who is workin on this.
-
7. Re: Problem with jBPM 3.2.2 + JBoss AS 4.2.2
neville.sequeira Nov 12, 2007 2:21 PM (in response to neville.sequeira)My attempt to get the source version tagged 3.2.2 has been to run the following command:
cvsgrab -url http://fisheye.jboss.org/browse/JBPM/jbpm.3 -tag 3.2.2
However, the source I get (specifially the file JBPM\jbpm.3\jpdl\jar\src\main\java\org\jbpm\db\hibernate.queries.hbm.xml) is no different than the version I got without specifying the -tag option.
Never used cvsgrab before.
How do I make sure I am getting the version tagged 3.2.2 ?
By the way, I resolved the issue by commenting out the relevant problematic queries (name starting with "Simulation." from the said file.
But, I really would like to know how to get the source version tagged 3.2.2. In the version tagged 3.2.2, I was (and am) expecting a version of the said file in which the said problematic queries do not exist. -
8. Re: Problem with jBPM 3.2.2 + JBoss AS 4.2.2
kukeltje Nov 12, 2007 3:04 PM (in response to neville.sequeira)according to http://fisheye.jboss.com/browse/JBPM/jbpm.3/jpdl/jar/src/main/java/org/jbpm/db/hibernate.queries.hbm.xml the tag is called jpdl_3_2_2
-
9. Re: Problem with jBPM 3.2.2 + JBoss AS 4.2.2
neville.sequeira Nov 12, 2007 5:49 PM (in response to neville.sequeira)Thanks kukeltje !!
I am all set now. I was able to build and deploy jbmp-console on JBoss AS 4.2.1 GA