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#4221229

Reply to the post : 
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4221229
_______________________________________________
jboss-user mailing list
jboss-user@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to