[jbossseam-issues] [JBoss JIRA] Created: (JBSEAM-2251) cannot register transaction synchronization at processInstance.end

Jamie Cruise (JIRA) jira-events at lists.jboss.org
Thu Nov 15 02:38:34 EST 2007


cannot register transaction synchronization at processInstance.end
------------------------------------------------------------------

                 Key: JBSEAM-2251
                 URL: http://jira.jboss.com/jira/browse/JBSEAM-2251
             Project: JBoss Seam
          Issue Type: Bug
          Components: BPM
    Affects Versions: 2.0.0.GA
         Environment: Tomcat 6 with Jboss Embedded
            Reporter: Jamie Cruise


If I have the JBPM scheduler service registered in jbpm.cfg.xml, I get the following error whenever I complete any process:

org.jbpm.JbpmException: couldn't delete jobs for 'org.jbpm.graph.exe.ProcessInstance at 1a282af'
	at org.jbpm.db.JobSession.deleteJobsForProcessInstance(JobSession.java:211)
	at org.jbpm.scheduler.db.DbSchedulerService.deleteTimersByProcessInstance(DbSchedulerService.java:54)
	at org.jbpm.graph.exe.ProcessInstance.end(ProcessInstance.java:329)
	at org.jbpm.graph.exe.Token.notifyParentOfTokenEnd(Token.java:331)
	at org.jbpm.graph.exe.Token.end(Token.java:303)
	at org.jbpm.graph.exe.Token.end(Token.java:253)
	at org.jbpm.graph.node.EndState.execute(EndState.java:59)
	at org.jbpm.graph.def.Node.enter(Node.java:318)
	at org.jbpm.graph.def.Transition.take(Transition.java:151)
	at org.jbpm.graph.def.Node.leave(Node.java:393)
	at org.jbpm.graph.node.StartState.leave(StartState.java:70)
	at org.jbpm.graph.exe.Token.signal(Token.java:194)
	at org.jbpm.graph.exe.Token.signal(Token.java:139)
	at org.jbpm.taskmgmt.exe.TaskInstance.end(TaskInstance.java:476)
	at org.jbpm.taskmgmt.exe.TaskInstance.end(TaskInstance.java:390)
	at org.jboss.seam.bpm.BusinessProcess.endTask(BusinessProcess.java:195)
	at com.volantice.zone.action.TaskBean.endTask(TaskBean.java:266)
	at com.volantice.zone.action.TaskBean.doEndTask(TaskBean.java:234)
	at com.volantice.zone.action.TaskBean.endTask(TaskBean.java:176)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.jboss.seam.util.Reflections.invoke(Reflections.java:21)
	at org.jboss.seam.intercept.RootInvocationContext.proceed(RootInvocationContext.java:31)
	at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:56)
	at org.jboss.seam.transaction.RollbackInterceptor.aroundInvoke(RollbackInterceptor.java:31)
	at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
	at org.jboss.seam.core.BijectionInterceptor.aroundInvoke(BijectionInterceptor.java:46)
	at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
	at org.jboss.seam.core.ConversationInterceptor.aroundInvoke(ConversationInterceptor.java:56)
	at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
	at org.jboss.seam.bpm.BusinessProcessInterceptor.aroundInvoke(BusinessProcessInterceptor.java:49)
	at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
	at org.jboss.seam.transaction.TransactionInterceptor$1.work(TransactionInterceptor.java:38)
	at org.jboss.seam.util.Work.workInTransaction(Work.java:40)
	at org.jboss.seam.transaction.TransactionInterceptor.aroundInvoke(TransactionInterceptor.java:32)
	at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
	at org.jboss.seam.core.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:42)
	at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
	at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:106)
	at org.jboss.seam.intercept.JavaBeanInterceptor.interceptInvocation(JavaBeanInterceptor.java:155)
	at org.jboss.seam.intercept.JavaBeanInterceptor.invoke(JavaBeanInterceptor.java:91)
	at com.volantice.zone.action.TaskBean_$$_javassist_9.endTask(TaskBean_$$_javassist_9.java)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.jboss.el.util.ReflectionUtil.invokeMethod(ReflectionUtil.java:328)
	at org.jboss.el.util.ReflectionUtil.invokeMethod(ReflectionUtil.java:341)
	at org.jboss.el.parser.AstBracketSuffix.invoke(AstBracketSuffix.java:63)
	at org.jboss.el.parser.AstValue.invoke(AstValue.java:96)
	at org.jboss.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:276)
	at com.sun.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:68)
	at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:77)
	at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:91)
	at javax.faces.component.UICommand.broadcast(UICommand.java:383)
	at com.sun.facelets.component.UIRepeat.broadcast(UIRepeat.java:574)
	at org.ajax4jsf.component.AjaxViewRoot.processEvents(AjaxViewRoot.java:184)
	at org.ajax4jsf.component.AjaxViewRoot.broadcastEvents(AjaxViewRoot.java:162)
	at org.ajax4jsf.component.AjaxViewRoot.processApplication(AjaxViewRoot.java:350)
	at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:97)
	at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
	at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:117)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:244)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83)
	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:73)
	at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:80)
	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
	at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64)
	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
	at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:44)
	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
	at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:141)
	at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:281)
	at org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:60)
	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
	at org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:58)
	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
	at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:261)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:581)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
	at java.lang.Thread.run(Unknown Source)
Caused by: org.hibernate.TransactionException: could not register synchronization
	at org.hibernate.transaction.JTATransaction.registerSynchronization(JTATransaction.java:309)
	at org.jbpm.db.JobSession.deleteJobsForProcessInstance(JobSession.java:208)
	... 93 more
Caused by: java.lang.NullPointerException
	at org.hibernate.transaction.JTATransaction.registerSynchronization(JTATransaction.java:306)
	... 94 more

my jbpm.cfg.xml:

<jbpm-configuration>

	<jbpm-context>
		<service name="persistence">
			<factory>
				<bean class="org.jbpm.persistence.db.DbPersistenceServiceFactory">
					<field name="isTransactionEnabled">
						<false />
					</field>
				</bean>
			</factory>

		</service>
		<service name="tx" factory="org.jbpm.tx.TxServiceFactory" />
		<service name="message" factory="org.jbpm.msg.db.DbMessageServiceFactory" />
		<service name="scheduler" factory="org.jbpm.scheduler.db.DbSchedulerServiceFactory" />
		<service name="logging" factory="org.jbpm.logging.db.DbLoggingServiceFactory" />
		<service name="authentication" factory="org.jbpm.security.authentication.DefaultAuthenticationServiceFactory" />
	</jbpm-context>

</jbpm-configuration>

my persistence.xml:

<persistence xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd" version="1.0">
	<persistence-unit name="xstreamlineDatabase">
		<provider>org.hibernate.ejb.HibernatePersistence</provider>
		<jta-data-source>java:/xstreamlineDatasource</jta-data-source>
		<properties>
			<property name="hibernate.dialect" value="org.hibernate.dialect.MySQLInnoDBDialect" />
			<property name="hibernate.show_sql" value="false" />
			<property name="hibernate.hbm2ddl.auto" value="update" />
			<property name="hibernate.cache.provider_class" value="org.hibernate.cache.HashtableCacheProvider" />
			<property name="hibernate.transaction.manager_lookup_class" value="org.hibernate.transaction.JBossTransactionManagerLookup" />
		</properties>

	</persistence-unit>

</persistence>

my 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>
		<property name="show_sql">false</property>
		<property name="dialect">org.hibernate.dialect.MySQLInnoDBDialect</property>
		<property name="connection.datasource">java:/xstreamlineDatasource</property>
		<property name="transaction.factory_class">org.hibernate.transaction.JTATransactionFactory</property>
		<property name="transaction.manager_lookup_class">org.hibernate.transaction.JBossTransactionManagerLookup</property>


		<property name="cache.provider_class">org.hibernate.cache.HashtableCacheProvider</property>
		<property name="hbm2ddl.auto">update</property>
		<!--property name="transaction.flush_before_completion">true</property-->

		<!-- ############################################ -->
		<!-- # 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.                                    -->
		<!-- identity mappings (begin) ===
			<mapping resource="org/jbpm/identity/User.hbm.xml"/>
			<mapping resource="org/jbpm/identity/Group.hbm.xml"/>
			<mapping resource="org/jbpm/identity/Membership.hbm.xml"/>
			==== identity mappings (end) -->

		<!-- 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.action mapping files -->
		<mapping resource="org/jbpm/graph/action/MailAction.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/MailNode.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>


-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the seam-issues mailing list