-
1. Re: How to get the nodeType of a node/nodeInstance?
dosten Oct 16, 2014 11:32 AM (in response to cyu021)You might have to check the class type of the node. There are several implementations of node class (like org.jbpm.workflow.instance.node.HumanTaskNodeInstance).
-
2. Re: How to get the nodeType of a node/nodeInstance?
cyu021 Oct 17, 2014 2:53 AM (in response to dosten)Hi Darren,
Do you have any idea for the following exception ?
Process instance 1[xxxxxxxxxx] is disconnected.
I tried to get the node instance with the following code:
RuntimeEngine engine = manager.getRuntimeEngine(null);
KieSession ksession = engine.getKieSession();
ProcessInstance processInstance = ksession.getProcessInstance(lpid);
WorkflowProcessInstance wfInstance = ((WorkflowProcessInstance)processInstance);
String nodeName = "";
if(processInstance != null) {
NodeInstance ni = wfInstance.getNodeInstances().iterator().next();
System.out.println(ni.getClass().getName());
nodeName = ni.getNodeName();
}
but I get this exception:
java.lang.RuntimeException: Process instance 1[xxxxxxxxxx] is disconnected.
org.jbpm.process.instance.impl.ProcessInstanceImpl.getProcess(ProcessInstanceImpl.java:90)
org.jbpm.workflow.instance.impl.WorkflowProcessInstanceImpl.getWorkflowProcess(WorkflowProcessInstanceImpl.java:212)
org.jbpm.workflow.instance.impl.WorkflowProcessInstanceImpl.getNodeContainer(WorkflowProcessInstanceImpl.java:81)
org.jbpm.workflow.instance.impl.NodeInstanceImpl.getNode(NodeInstanceImpl.java:121)
org.jbpm.workflow.instance.impl.NodeInstanceImpl.getNodeName(NodeInstanceImpl.java:88)
com.fet.poc.npp.bpm.NppDemoProcessService.getNodeByTxid(NppDemoProcessService.java:116)
com.fet.poc.npp.restful.POCService.getNodeByTxid(POCService.java:135)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
java.lang.reflect.Method.invoke(Method.java:606)
org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:173)
org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:89)
org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:165)
org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:92)
org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:58)
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
java.util.concurrent.FutureTask.run(FutureTask.java:262)
org.apache.cxf.workqueue.SynchronousExecutor.execute(SynchronousExecutor.java:37)
org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:106)
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:263)
org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)
org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:207)
org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:209)
org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:152)
org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:114)
org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:185)
org.apache.cxf.transport.servlet.AbstractHTTPServlet.doGet(AbstractHTTPServlet.java:113)
javax.servlet.http.HttpServlet.service(HttpServlet.java:734)
org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:164)
-
3. Re: How to get the nodeType of a node/nodeInstance?
dosten Oct 17, 2014 2:19 PM (in response to cyu021)I never seen that error before. Maybe the instance is no longer active.