Hi,
I'm trying to deploy the latest jbpm console on a JBoss AS 4.0.5GA; as it would
provide valuable information about the current state of the processes.
Seeing in the forum the .ear approach is preferred, yesterday I've checked out the
jbpm.3 module from cvs and built it. I managed to build the ear file, deploy it together
with its configuration zip file, include the latest hsql.jar and
backport-util-concurrent.jar, create the db, seed it with reference data and I can log in.
I'm getting an exception though :
| 12:39:35,386 ERROR [STDERR] Nov 9, 2006 12:39:35 PM
com.sun.faces.lifecycle.LifecycleImpl phase
| WARNING: phase(RENDER_RESPONSE 6,com.sun.faces.context.FacesContextImpl@f7821d) threw
exception: org.hibernate.HibernateException: Unable to locate current JTA transaction
Unable to locate current JTA transaction
| org.hibernate.context.JTASessionContext.currentSession(JTASessionContext.java:61)
| org.hibernate.impl.SessionFactoryImpl.getCurrentSession(SessionFactoryImpl.java:542)
|
org.jbpm.persistence.db.DbPersistenceService.getSession(DbPersistenceService.java:103)
| org.jbpm.JbpmContext.getSession(JbpmContext.java:467)
|
org.jbpm.webapp.bean.search.SearchControlBean.updateSearchResults(SearchControlBean.java:120)
| org.jbpm.webapp.listener.JbpmPhaseListener.applyFormBean(JbpmPhaseListener.java:106)
| org.jbpm.webapp.listener.JbpmPhaseListener.beforePhase(JbpmPhaseListener.java:64)
| com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:214)
| com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:140)
| javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
|
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
|
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
|
org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:67)
| org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.java:223)
|
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
|
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| org.jbpm.webapp.filter.LogFilter.doFilter(LogFilter.java:59)
|
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
|
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
|
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
|
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
| org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
|
org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
|
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:524)
| org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
| org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
| org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
|
org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156)
| org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
| org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
| org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
|
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
| org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
|
org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
| java.lang.Thread.run(Thread.java:595)
|
It doesn't look it prevents the login, but it proves fatal when uploading a process
file. As it looks related to database transactions, I guess the configuration of hibernate
is wrong somewhere. I've tried a number a alternate configurations, but I can't
get rid of the exception. It's probably no big deal, but I can't get it done. The
datasource and usertransaction are present in the AS jndi view. So, that's not it
either.
Does anybody know what might the problem ? I'm including the configuration
underneath.
hibernate.cfg.xml
| <?xml version='1.0' encoding='utf-8'?>
|
| <!DOCTYPE hibernate-configuration PUBLIC
| "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
|
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
|
| <hibernate-configuration>
| <session-factory>
|
| <!-- hibernate dialect -->
| <property
name="hibernate.dialect">org.hibernate.dialect.HSQLDialect</property>
|
| <!-- JDBC connection properties (begin) ===
| <property
name="hibernate.connection.driver_class">org.hsqldb.jdbcDriver</property>
| <property
name="hibernate.connection.url">jdbc:hsqldb:mem:jbpm</property>
| <property
name="hibernate.connection.username">sa</property>
| <property name="hibernate.connection.password"></property>
| ==== JDBC connection properties (end) -->
|
| <property
name="hibernate.cache.provider_class">org.hibernate.cache.HashtableCacheProvider</property>
|
| <!-- JBoss transaction manager lookup (begin) -->
| <property
name="hibernate.transaction.manager_lookup_class">org.hibernate.transaction.JBossTransactionManagerLookup</property>
| <!-- JBoss transaction manager lookup (end) -->
|
| <!-- DataSource properties (begin) -->
| <property
name="hibernate.connection.datasource">java:/JbpmDS</property>
| <!-- DataSource properties (end) -->
|
| <!-- JTA transaction properties (begin) ===
| <property
name="hibernate.transaction.factory_class">org.hibernate.transaction.JTATransactionFactory</property>
| ==== JTA transaction properties (end) -->
| <property
name="jta.UserTransaction">java:comp/UserTransaction</property>
|
| <!-- CMT transaction properties (begin) -->
| <property
name="hibernate.transaction.factory_class">org.hibernate.transaction.CMTTransactionFactory</property>
| <property
name="hibernate.transaction.manager_lookup_class">org.hibernate.transaction.JBossTransactionManagerLookup</property>
| <!-- CMT transaction properties (end) -->
|
| <!-- logging properties (begin) ===
| <property name="hibernate.show_sql">true</property>
| <property name="hibernate.format_sql">true</property>
| <property name="hibernate.use_sql_comments">true</property>
| ==== logging properties (end) -->
|
| <!-- ############################################ -->
| <!-- # mapping files with external dependencies # -->
| <!-- ############################################ -->
|
| <!-- following mapping file has a dependendy on -->
| <!-- 'bsh-{version}.jar'. -->
| <!-- uncomment this if you don't have bsh on your -->
| <!-- classpath. you won't be able to use the -->
| <!-- script element in process definition files -->
| <mapping resource="org/jbpm/graph/action/Script.hbm.xml"/>
|
| <!-- following mapping files have a dependendy on -->
| <!-- 'jbpm-identity.jar', mapping files -->
| <!-- of the pluggable jbpm identity component. -->
| <!-- Uncomment the following 3 lines if you -->
| <!-- want to use the jBPM identity mgmgt -->
| <!-- component. -->
|
| <mapping resource="org/jbpm/identity/User.hbm.xml"/>
| <mapping resource="org/jbpm/identity/Group.hbm.xml"/>
| <mapping resource="org/jbpm/identity/Membership.hbm.xml"/>
|
| <!-- following mapping files have a dependendy on -->
| <!-- the JCR API -->
| <!-- jcr mappings (begin) ===
| <mapping
resource="org/jbpm/context/exe/variableinstance/JcrNodeInstance.hbm.xml"/>
| ==== jcr mappings (end) -->
|
|
| <!-- ###################### -->
| <!-- # jbpm mapping files # -->
| <!-- ###################### -->
|
| <!-- hql queries and type defs -->
| <mapping resource="org/jbpm/db/hibernate.queries.hbm.xml" />
|
| <!-- graph.def mapping files -->
| <mapping
resource="org/jbpm/graph/def/ProcessDefinition.hbm.xml"/>
| <mapping resource="org/jbpm/graph/def/Node.hbm.xml"/>
| <mapping resource="org/jbpm/graph/def/Transition.hbm.xml"/>
| <mapping resource="org/jbpm/graph/def/Event.hbm.xml"/>
| <mapping resource="org/jbpm/graph/def/Action.hbm.xml"/>
| <mapping resource="org/jbpm/graph/def/SuperState.hbm.xml"/>
| <mapping resource="org/jbpm/graph/def/ExceptionHandler.hbm.xml"/>
| <mapping resource="org/jbpm/instantiation/Delegation.hbm.xml"/>
|
| <!-- graph.node mapping files -->
| <mapping resource="org/jbpm/graph/node/StartState.hbm.xml"/>
| <mapping resource="org/jbpm/graph/node/EndState.hbm.xml"/>
| <mapping resource="org/jbpm/graph/node/ProcessState.hbm.xml"/>
| <mapping resource="org/jbpm/graph/node/Decision.hbm.xml"/>
| <mapping resource="org/jbpm/graph/node/Fork.hbm.xml"/>
| <mapping resource="org/jbpm/graph/node/Join.hbm.xml"/>
| <mapping resource="org/jbpm/graph/node/State.hbm.xml"/>
| <mapping resource="org/jbpm/graph/node/TaskNode.hbm.xml"/>
|
| <!-- context.def mapping files -->
| <mapping
resource="org/jbpm/context/def/ContextDefinition.hbm.xml"/>
| <mapping resource="org/jbpm/context/def/VariableAccess.hbm.xml"/>
|
| <!-- taskmgmt.def mapping files -->
| <mapping
resource="org/jbpm/taskmgmt/def/TaskMgmtDefinition.hbm.xml"/>
| <mapping resource="org/jbpm/taskmgmt/def/Swimlane.hbm.xml"/>
| <mapping resource="org/jbpm/taskmgmt/def/Task.hbm.xml"/>
| <mapping
resource="org/jbpm/taskmgmt/def/TaskController.hbm.xml"/>
|
| <!-- module.def mapping files -->
| <mapping
resource="org/jbpm/module/def/ModuleDefinition.hbm.xml"/>
|
| <!-- bytes mapping files -->
| <mapping resource="org/jbpm/bytes/ByteArray.hbm.xml"/>
|
| <!-- file.def mapping files -->
| <mapping resource="org/jbpm/file/def/FileDefinition.hbm.xml"/>
|
| <!-- scheduler.def mapping files -->
| <mapping
resource="org/jbpm/scheduler/def/CreateTimerAction.hbm.xml"/>
| <mapping
resource="org/jbpm/scheduler/def/CancelTimerAction.hbm.xml"/>
|
| <!-- graph.exe mapping files -->
| <mapping resource="org/jbpm/graph/exe/Comment.hbm.xml"/>
| <mapping resource="org/jbpm/graph/exe/ProcessInstance.hbm.xml"/>
| <mapping resource="org/jbpm/graph/exe/Token.hbm.xml"/>
| <mapping resource="org/jbpm/graph/exe/RuntimeAction.hbm.xml"/>
|
| <!-- module.exe mapping files -->
| <mapping resource="org/jbpm/module/exe/ModuleInstance.hbm.xml"/>
|
| <!-- context.exe mapping files -->
| <mapping
resource="org/jbpm/context/exe/ContextInstance.hbm.xml"/>
| <mapping
resource="org/jbpm/context/exe/TokenVariableMap.hbm.xml"/>
| <mapping
resource="org/jbpm/context/exe/VariableInstance.hbm.xml"/>
| <mapping
resource="org/jbpm/context/exe/variableinstance/ByteArrayInstance.hbm.xml"/>
| <mapping
resource="org/jbpm/context/exe/variableinstance/DateInstance.hbm.xml"/>
| <mapping
resource="org/jbpm/context/exe/variableinstance/DoubleInstance.hbm.xml"/>
| <mapping
resource="org/jbpm/context/exe/variableinstance/HibernateLongInstance.hbm.xml"/>
| <mapping
resource="org/jbpm/context/exe/variableinstance/HibernateStringInstance.hbm.xml"/>
| <mapping
resource="org/jbpm/context/exe/variableinstance/LongInstance.hbm.xml"/>
| <mapping
resource="org/jbpm/context/exe/variableinstance/NullInstance.hbm.xml"/>
| <mapping
resource="org/jbpm/context/exe/variableinstance/StringInstance.hbm.xml"/>
|
| <!-- job mapping files -->
| <mapping resource="org/jbpm/job/Job.hbm.xml"/>
| <mapping resource="org/jbpm/job/Timer.hbm.xml"/>
| <mapping resource="org/jbpm/job/ExecuteNodeJob.hbm.xml"/>
| <mapping resource="org/jbpm/job/ExecuteActionJob.hbm.xml"/>
|
| <!-- taskmgmt.exe mapping files -->
| <mapping
resource="org/jbpm/taskmgmt/exe/TaskMgmtInstance.hbm.xml"/>
| <mapping resource="org/jbpm/taskmgmt/exe/TaskInstance.hbm.xml"/>
| <mapping resource="org/jbpm/taskmgmt/exe/PooledActor.hbm.xml"/>
| <mapping
resource="org/jbpm/taskmgmt/exe/SwimlaneInstance.hbm.xml"/>
|
| <!-- logging mapping files -->
| <mapping resource="org/jbpm/logging/log/ProcessLog.hbm.xml"/>
| <mapping resource="org/jbpm/logging/log/MessageLog.hbm.xml"/>
| <mapping resource="org/jbpm/logging/log/CompositeLog.hbm.xml"/>
| <mapping resource="org/jbpm/graph/log/ActionLog.hbm.xml"/>
| <mapping resource="org/jbpm/graph/log/NodeLog.hbm.xml"/>
| <mapping
resource="org/jbpm/graph/log/ProcessInstanceCreateLog.hbm.xml"/>
| <mapping
resource="org/jbpm/graph/log/ProcessInstanceEndLog.hbm.xml"/>
| <mapping resource="org/jbpm/graph/log/ProcessStateLog.hbm.xml"/>
| <mapping resource="org/jbpm/graph/log/SignalLog.hbm.xml"/>
| <mapping resource="org/jbpm/graph/log/TokenCreateLog.hbm.xml"/>
| <mapping resource="org/jbpm/graph/log/TokenEndLog.hbm.xml"/>
| <mapping resource="org/jbpm/graph/log/TransitionLog.hbm.xml"/>
| <mapping resource="org/jbpm/context/log/VariableLog.hbm.xml"/>
| <mapping
resource="org/jbpm/context/log/VariableCreateLog.hbm.xml"/>
| <mapping
resource="org/jbpm/context/log/VariableDeleteLog.hbm.xml"/>
| <mapping
resource="org/jbpm/context/log/VariableUpdateLog.hbm.xml"/>
| <mapping
resource="org/jbpm/context/log/variableinstance/ByteArrayUpdateLog.hbm.xml"/>
| <mapping
resource="org/jbpm/context/log/variableinstance/DateUpdateLog.hbm.xml"/>
| <mapping
resource="org/jbpm/context/log/variableinstance/DoubleUpdateLog.hbm.xml"/>
| <mapping
resource="org/jbpm/context/log/variableinstance/HibernateLongUpdateLog.hbm.xml"/>
| <mapping
resource="org/jbpm/context/log/variableinstance/HibernateStringUpdateLog.hbm.xml"/>
| <mapping
resource="org/jbpm/context/log/variableinstance/LongUpdateLog.hbm.xml"/>
| <mapping
resource="org/jbpm/context/log/variableinstance/StringUpdateLog.hbm.xml"/>
| <mapping resource="org/jbpm/taskmgmt/log/TaskLog.hbm.xml"/>
| <mapping resource="org/jbpm/taskmgmt/log/TaskCreateLog.hbm.xml"/>
| <mapping resource="org/jbpm/taskmgmt/log/TaskAssignLog.hbm.xml"/>
| <mapping resource="org/jbpm/taskmgmt/log/TaskEndLog.hbm.xml"/>
| <mapping resource="org/jbpm/taskmgmt/log/SwimlaneLog.hbm.xml"/>
| <mapping
resource="org/jbpm/taskmgmt/log/SwimlaneCreateLog.hbm.xml"/>
| <mapping
resource="org/jbpm/taskmgmt/log/SwimlaneAssignLog.hbm.xml"/>
|
| </session-factory>
| </hibernate-configuration>
|
jbpm.cfg.xml
| <jbpm-configuration>
|
| <jbpm-context>
| <service name="persistence">
| <factory>
| <bean
class="org.jbpm.persistence.db.DbPersistenceServiceFactory">
| <field name="isCurrentSessionEnabled"><true
/></field>
| <field name="isTransactionEnabled"><false
/></field>
| </bean>
| </factory>
| </service>
| <service name="message">
| <factory>
| <bean class="org.jbpm.msg.jms.JmsMessageServiceFactoryImpl">
| <field name="connectionFactoryJndiName"><string
value="java:/JmsXA"/></field>
| <field name="destinationJndiName"><string
value="queue/JbpmCommandQueue"/></field>
| </bean>
| </factory>
| </service>
| <service name="scheduler"
factory="org.jbpm.scheduler.ejbtimer.EjbSchedulerServiceFactory" />
|
| <service name="tx" factory="org.jbpm.tx.TxServiceFactory"
/>
| <service name="logging"
factory="org.jbpm.logging.db.DbLoggingServiceFactory" />
| <service name="authentication"
factory="org.jbpm.security.authentication.DefaultAuthenticationServiceFactory"
/>
| </jbpm-context>
|
| <!-- configuration property used by persistence service impl
org.jbpm.persistence.db.DbPersistenceServiceFactory -->
| <string name="resource.hibernate.cfg.xml"
value="hibernate.cfg.xml" />
|
| <!-- configuration resource files pointing to default configuration files in
jbpm-jpdl.jar -->
| <string name="resource.business.calendar"
value="org/jbpm/calendar/jbpm.business.calendar.properties" />
| <string name="resource.default.modules"
value="org/jbpm/graph/def/jbpm.default.modules.properties" />
| <string name="resource.converter"
value="org/jbpm/db/hibernate/jbpm.converter.properties" />
| <string name="resource.action.types"
value="org/jbpm/graph/action/action.types.xml" />
| <string name="resource.node.types"
value="org/jbpm/graph/node/node.types.xml" />
| <string name="resource.parsers"
value="org/jbpm/jpdl/par/jbpm.parsers.xml" />
| <string name="resource.varmapping"
value="org/jbpm/context/exe/jbpm.varmapping.xml" />
| <string name="resource.mail.templates"
value="jbpm.mail.templates.xml" />
|
| <long name="jbpm.msg.wait.timout" value="5000"
singleton="true" />
| <int name="jbpm.byte.block.size" value="1024"
singleton="true" />
| <string name="jbpm.mail.smtp.host" value="localhost" />
| <bean name="jbpm.task.instance.factory"
class="org.jbpm.taskmgmt.impl.DefaultTaskInstanceFactoryImpl"
singleton="true" />
| <bean name="jbpm.variable.resolver"
class="org.jbpm.jpdl.el.impl.JbpmVariableResolver" singleton="true"
/>
| <bean name="jbpm.mail.address.resolver"
class="org.jbpm.identity.mail.IdentityAddressResolver"
singleton="true" />
|
| <!-- note that the default job executor needs to be overwritten with a null value
-->
| <null name="jbpm.job.executor" />
|
| </jbpm-configuration>
|
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3984480#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...