Hi all i have a strange problem to navigate a process from a servlet.
The servlet is simple , it get as input the id of the process, and the name of transition
where it have to go for the next token or node.
The names transitions's are sended with radio buttons and the values inside them come
from iterating the Map : mynode.getLeavingTransitionsMap().
Now the problem is this exception:
| 2009-03-26 11:42:05,463 DEBUG [org.jbpm.graph.def.GraphElement] executing action
'action[MailSender]'
| 2009-03-26 11:42:05,463 DEBUG [org.jbpm.graph.exe.Token] token[12252] is locked by
token[12252]
| 2009-03-26 11:42:05,463 DEBUG [org.hibernate.impl.SessionImpl] initializing proxy:
[org.jbpm.graph.node.State#11131]
| 2009-03-26 11:42:05,463 DEBUG [org.jbpm.graph.def.GraphElement] event
'timer-create' on 'State(inagenzia)' for 'Token(/)'
| 2009-03-26 11:42:05,463 DEBUG [org.jbpm.graph.exe.Token] token[12252] is unlocked by
token[12252]
| 2009-03-26 11:42:05,463 ERROR [org.jbpm.graph.def.GraphElement] action threw
exception: ejb timer entity lookup problem
| org.jbpm.JbpmException: ejb timer entity lookup problem
| at
org.jbpm.scheduler.ejbtimer.EntitySchedulerServiceFactory.getTimerEntityHome(EntitySchedulerServiceFactory.java:45)
| at
org.jbpm.scheduler.ejbtimer.EntitySchedulerServiceFactory.openService(EntitySchedulerServiceFactory.java:62)
| at org.jbpm.svc.Services.getService(Services.java:177)
| at org.jbpm.svc.Services.getCurrentService(Services.java:98)
| at org.jbpm.svc.Services.getCurrentService(Services.java:89)
| at org.jbpm.scheduler.def.CreateTimerAction.execute(CreateTimerAction.java:79)
| at org.jbpm.graph.def.GraphElement.executeAction(GraphElement.java:284)
| at org.jbpm.graph.def.GraphElement.executeActions(GraphElement.java:241)
| at org.jbpm.graph.def.GraphElement.fireAndPropagateEvent(GraphElement.java:213)
| at org.jbpm.graph.def.GraphElement.fireEvent(GraphElement.java:196)
| at org.jbpm.graph.def.Node.enter(Node.java:371)
| 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.javassist.JavassistLazyInitializer.invoke(JavassistLazyInitializer.java:173)
| at org.jbpm.graph.def.Node_$$_javassist_49.enter(Node_$$_javassist_49.java)
| at org.jbpm.graph.def.Transition.take(Transition.java:167)
| at org.jbpm.graph.def.Node.leave(Node.java:479)
| at org.jbpm.graph.exe.ExecutionContext.leaveNode(ExecutionContext.java:155)
| at org.jbpm.graph.node.Decision.execute(Decision.java:194)
| at org.jbpm.graph.def.Node.enter(Node.java:390)
| 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.javassist.JavassistLazyInitializer.invoke(JavassistLazyInitializer.java:173)
| at org.jbpm.graph.def.Node_$$_javassist_49.enter(Node_$$_javassist_49.java)
| at org.jbpm.graph.def.Transition.take(Transition.java:167)
| at org.jbpm.graph.def.Node.leave(Node.java:479)
| 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.javassist.JavassistLazyInitializer.invoke(JavassistLazyInitializer.java:173)
| at org.jbpm.graph.def.Node_$$_javassist_49.leave(Node_$$_javassist_49.java)
| at org.jbpm.graph.exe.Token.signal(Token.java:223)
| at org.jbpm.graph.exe.Token.signal(Token.java:180)
| 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.javassist.JavassistLazyInitializer.invoke(JavassistLazyInitializer.java:173)
| at org.jbpm.graph.exe.Token_$$_javassist_65.signal(Token_$$_javassist_65.java)
| at org.jbpm.graph.exe.ProcessInstance.signal(ProcessInstance.java:319)
| at it.test.servlet.CallserServlet.doGet(CallserServlet.java:63)
| at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
| at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
| at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
| at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
| at
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
| 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.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
| at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
| at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
| at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
| at
org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
| at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
| at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:262)
| at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
| at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
| at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:446)
| at java.lang.Thread.run(Thread.java:595)
| Caused by: javax.naming.NameNotFoundException: ejb not bound
| at org.jnp.server.NamingServer.getBinding(NamingServer.java:529)
| at org.jnp.server.NamingServer.getBinding(NamingServer.java:537)
| at org.jnp.server.NamingServer.getObject(NamingServer.java:543)
| at org.jnp.server.NamingServer.lookup(NamingServer.java:267)
| at org.jnp.server.NamingServer.lookup(NamingServer.java:270)
| at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:667)
| at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:774)
| at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:627)
| at javax.naming.InitialContext.lookup(InitialContext.java:351)
| at
org.jbpm.scheduler.ejbtimer.EntitySchedulerServiceFactory.lookup(EntitySchedulerServiceFactory.java:54)
| at
org.jbpm.scheduler.ejbtimer.EntitySchedulerServiceFactory.getTimerEntityHome(EntitySchedulerServiceFactory.java:43)
| ... 65 more
|
I tried retrieving the process instance with:
| JbpmContext.getProcessInstance(long);
| JbpmContext.getProcessInstanceForUpdate(long);
| JbpmContext.loadProcessInstance(long);
|
The exception is thrown in any case, but if i use the console for the same transition, the
exception is not thrown. And after that i used the console , i can use the servlet as well
and no more exceptions will be thrown, using the signal() o signal(transitionName).
I don't know how, but seem that there is something not initialized by me in the
Servlet , instead the console of JBPM create something that i'm missing.
here part of the code of the servlet :
| JbpmConfiguration jbpmConfiguration = JbpmConfiguration.getInstance();
| JbpmContext ctx = jbpmConfiguration.createJbpmContext();
| ProcessInstance pInst = ctx.getProcessInstanceForUpdate(Long.parseLong(id));
| pInst.signal(transitionName);
|
could anyone help please?.
Thanks in advance.
T.
View the original post :
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4221229#...
Reply to the post :
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&a...