[
http://jira.jboss.com/jira/browse/GPD-201?page=comments#action_12403663 ]
Ronald van Kuijk commented on GPD-201:
--------------------------------------
just so that everybody knows
There is a space behind the transition name in selected by the expression. Not sure if
this was a slip of the keyboard or something the GPD did. Trimming the expression in the
GPD would make it more explicit that this will not happen. Trimming it in the EL handler
would to, but that is a separate issue
CLONE -Decision Nodes not working, exception says decision selected
non existing transition
--------------------------------------------------------------------------------------------
Key: GPD-201
URL:
http://jira.jboss.com/jira/browse/GPD-201
Project: JBoss jBPM GPD
Issue Type: Bug
Components: jpdl
Environment: T60 laptop running RHEL 5, Java 1.5, SOA Platform 4.2 CR3
Reporter: Koen Aers
Assigned To: Koen Aers
Fix For: jBPM jPDL Designer 3.1.3
I have defined a process definition with the following decision node where Account is a
POJO. I can see that the Account as a jBPM variable in the jBPM Admin Console.
<decision name="Sufficient Funds in Account?"
expression="#{account.balance > tollTransaction.toll} ">
<transition to="Post Toll Transaction to Account"
name="true"></transition>
<transition to="Replenish Account"
name="false"></transition>
</decision>
When I execute the process, I get the following errors:
15:55:39,123 ERROR [GraphElement] action threw exception: decision 'Sufficient Funds
in Account?' selected non existing transition 'true '
org.jbpm.JbpmException: decision 'Sufficient Funds in Account?' selected non
existing transition 'true '
at org.jbpm.graph.node.Decision.execute(Decision.java:102)
at org.jbpm.graph.def.Node.enter(Node.java:319)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at
org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:157)
at org.jbpm.graph.def.Node$$EnhancerByCGLIB$$b7f2fc0f.enter(<generated>)
at org.jbpm.graph.def.Transition.take(Transition.java:151)
at org.jbpm.graph.def.Node.leave(Node.java:394)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at
org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:157)
at org.jbpm.graph.def.Node$$EnhancerByCGLIB$$b7f2fc0f.leave(<generated>)
at org.jbpm.graph.exe.Token.signal(Token.java:195)
at org.jbpm.graph.exe.Token.signal(Token.java:140)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at
org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:157)
at org.jbpm.graph.exe.Token$$EnhancerByCGLIB$$e74c698b.signal(<generated>)
at org.jbpm.command.SignalCommand.execute(SignalCommand.java:91)
at
org.jboss.soa.esb.services.jbpm.cmd.AsyncProcessSignal$AsyncSignalAction.execute(AsyncProcessSignal.java:287)
at org.jbpm.graph.def.Action.execute(Action.java:122)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at
org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:157)
at
org.jbpm.graph.def.Action$$EnhancerByCGLIB$$b15cf56b.execute(<generated>)
at org.jbpm.graph.def.GraphElement.executeAction(GraphElement.java:264)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at
org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:157)
at
org.jbpm.graph.def.Node$$EnhancerByCGLIB$$b7f2fc0f.executeAction(<generated>)
at org.jbpm.job.ExecuteActionJob.execute(ExecuteActionJob.java:32)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at
org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:157)
at org.jbpm.job.Job$$EnhancerByCGLIB$$27ab04c8.execute(<generated>)
at
org.jbpm.job.executor.JobExecutorThread.executeJob(JobExecutorThread.java:164)
at org.jbpm.job.executor.JobExecutorThread.run(JobExecutorThread.java:64)
I then tried the following (simpler) expression, and got a similar result:
#{account.balance > 100}
16:07:28,807 ERROR [GraphElement] action threw exception: decision 'Sufficient Funds
in Account?' selected non existing transition 'false '
org.jbpm.JbpmException: decision 'Sufficient Funds in Account?' selected non
existing transition 'false '
--
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