[
https://jira.jboss.org/jira/browse/JBPM-1798?page=com.atlassian.jira.plug...
]
Thomas Diesler commented on JBPM-1798:
--------------------------------------
[11:03:47] Thomas Diesler: with process
<process-definition name="resourceprocess">
<start-state name="start">
<transition to="end">
<action class="org.jbpm.jpdl.par.ResourceAction"
/>
</transition>
</start-state>
<end-state name="end" />
</process-definition>
[11:04:19] ... when you create a processinstance, do you need to signal?
[11:04:39] Tom Baeyens: start-state is a wait state
[11:04:42] ... so in that case yes
[11:04:47] ... if you want automatic start
[11:04:51] ... then you need to do
[11:05:04] ... <process-definition initial="automatic" ...
[11:05:15] ... <node name="automatic"
[11:05:16] Thomas Diesler: here is the call trace
at org.jbpm.graph.exe.ProcessInstance.setEnd(ProcessInstance.java:578)
at org.jbpm.graph.exe.ProcessInstance.end(ProcessInstance.java:343)
at org.jbpm.graph.exe.Token.notifyParentOfTokenEnd(Token.java:378)
at org.jbpm.graph.exe.Token.end(Token.java:344)
at org.jbpm.graph.exe.Token.end(Token.java:287)
at org.jbpm.graph.node.EndState.execute(EndState.java:65)
at sun.reflect.GeneratedMethodAccessor30.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at
org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:157)
at org.jbpm.graph.def.Node$$EnhancerByCGLIB$$cfb27ad.execute(<generated>)
at org.jbpm.graph.exe.ProcessInstance.fireStartEvent(ProcessInstance.java:186)
at org.jbpm.graph.exe.ProcessInstance.<init>(ProcessInstance.java:144)
at org.jbpm.graph.exe.ProcessInstance.<init>(ProcessInstance.java:93)
at org.jbpm.JbpmContext.newProcessInstance(JbpmContext.java:438)
[11:05:39] ... it seems that setEnd() is called directly from the ProcessInstance ctor
[11:06:26] ... This is not what you would expect, is it?
[11:06:35] Tom Baeyens: nope. i did not expect that
[11:44:35] ... It is the existence of this test
http://fisheye.jboss.com/browse/JbpmSvn/jbpm3/trunk/modules/core/src/test...
[11:45:17] ... If that test is not included in the testrun, the
ProcessArchiveClassLoadingDbTest succeeds
[11:45:40] ... how is that possible?
potential nullpointer in asynchronous jobs when process ends
------------------------------------------------------------
Key: JBPM-1798
URL:
https://jira.jboss.org/jira/browse/JBPM-1798
Project: JBoss jBPM
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: Core Engine
Reporter: Tom Baeyens
Assignee: Alejandro Guizar
Fix For: jBPM 3.2.6 GA
when a process instance ends, a cleaning Job is issued. if that happens when an async
job is outstanding, then it turns out that this may lead to a NPE when the outstanding job
is executed.
use this process to reproduce in an AbstractDbTestCase
ProcessDefinition processDefinition = ProcessDefinition.parseXmlString(
"<process-definition name='customjobexecution'
initial='start'>" +
" <node name='start'>" +
" <transition to='end'>" +
" <action async='true'
class='"+AsyncAction.class.getName()+"' />" +
" </transition>" +
" </node>" +
" <end-state name='end' />" +
"</process-definition>"
deploy and start it
new Transaction()
then start the job executor with startJobExecutor()
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira