[jBPM] - drools exception
by vagga ravi
vagga ravi [https://community.jboss.org/people/vaggaravi] created the discussion
"drools exception"
To view the discussion, visit: https://community.jboss.org/message/810919#810919
--------------------------------------------------------------
Hi
I got below drools exception when iam executing standalone java application(attached file).i was added org.apache.servicemix.bundles.drools-5.1.1_1 jar for drools
java.lang.NoSuchMethodError: org.drools.runtime.process.ProcessInstance.getProcess()Lorg/drools/definition/process/Process;
at org.jbpm.process.workitem.wsht.AbstractHTWorkItemHandler.createTaskBasedOnWorkItemParams(AbstractHTWorkItemHandler.java:106)
at org.jbpm.process.workitem.wsht.GenericHTWorkItemHandler.executeWorkItem(GenericHTWorkItemHandler.java:178)
at org.drools.process.instance.impl.DefaultWorkItemManager.internalExecuteWorkItem(DefaultWorkItemManager.java:72)
at org.drools.workflow.instance.node.WorkItemNodeInstance.internalTrigger(WorkItemNodeInstance.java:101)
at org.drools.workflow.instance.impl.NodeInstanceImpl.trigger(NodeInstanceImpl.java:117)
at org.drools.workflow.instance.impl.NodeInstanceImpl.triggerConnection(NodeInstanceImpl.java:178)
at org.drools.workflow.instance.impl.NodeInstanceImpl.triggerCompleted(NodeInstanceImpl.java:144)
at org.drools.workflow.instance.node.ActionNodeInstance.triggerCompleted(ActionNodeInstance.java:62)
at org.drools.workflow.instance.node.ActionNodeInstance.internalTrigger(ActionNodeInstance.java:58)
at org.drools.workflow.instance.impl.NodeInstanceImpl.trigger(NodeInstanceImpl.java:117)
at org.drools.workflow.instance.impl.NodeInstanceImpl.triggerConnection(NodeInstanceImpl.java:178)
at org.drools.workflow.instance.impl.NodeInstanceImpl.triggerCompleted(NodeInstanceImpl.java:144)
at org.drools.workflow.instance.node.StartNodeInstance.triggerCompleted(StartNodeInstance.java:49)
at org.drools.workflow.instance.node.StartNodeInstance.internalTrigger(StartNodeInstance.java:41)
at org.drools.workflow.instance.impl.NodeInstanceImpl.trigger(NodeInstanceImpl.java:117)
at org.drools.ruleflow.instance.RuleFlowProcessInstance.internalStart(RuleFlowProcessInstance.java:32)
at org.drools.process.instance.impl.ProcessInstanceImpl.start(ProcessInstanceImpl.java:192)
at org.drools.workflow.instance.impl.WorkflowProcessInstanceImpl.start(WorkflowProcessInstanceImpl.java:309)
at org.drools.common.AbstractWorkingMemory.startProcess(AbstractWorkingMemory.java:1644)
at org.drools.impl.StatefulKnowledgeSessionImpl.startProcess(StatefulKnowledgeSessionImpl.java:306)
at com.iton.humantask.HumanTaskExample.main(HumanTaskExample.java:42)
--------------------------------------------------------------
Reply to this message by going to Community
[https://community.jboss.org/message/810919#810919]
Start a new discussion in jBPM at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&con...]
12 years, 11 months
[jBPM] - Re: jBPM5 - Can't Scale, Won't Scale
by Kris Verlaenen
Kris Verlaenen [https://community.jboss.org/people/KrisVerlaenen] created the discussion
"Re: jBPM5 - Can't Scale, Won't Scale"
To view the discussion, visit: https://community.jboss.org/message/801981#801981
--------------------------------------------------------------
> > *If you only have one session, there would be no contention as the ksession would solve this*
> I did not know this and this is could be the root of my misunderstanding. But I can't understand how the ksession could solve this. If process instance A executes in transaction Ta and process instance B executes in transaction Tb, and both transactions change the session info - which is simply a JPA entity - how do the two process instance executions NOT serialise?
The engine will make sure request a is completed before starting request b.
> In fact, I can see how these sessions might be useful for Drools users, but from the point-of-view of a jBPM user - who just wants to execute processes - it's hard to see what the concept of sessions gives you? If you just want to execute business processes, why should you care about "sessions"?
A session is the runtime interface to talk to the engine, so you do need it. But you are right, when you don't need any rule-related persistence etc., you probably don't need some of this "advanced" session management. In situations like this, the two most common architectures are:
* Session per request: if your session doesn't contain any state and you don't use any timers, you can just instantiate a session on request and dispose it afterwards
-> session mgmt is fairly simple, just create / dispose every time
* Singleton session (or as extension N sessions): you have a service that reuses the same session(s), and keeps these sessions alive at all time (to support timer execution), possibly distributed across a cluster of nodes
-> no disposal of sessions
Kris
--------------------------------------------------------------
Reply to this message by going to Community
[https://community.jboss.org/message/801981#801981]
Start a new discussion in jBPM at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&con...]
12 years, 11 months