[jboss-user] [JBoss jBPM] - executing process with timer

boxwala do-not-reply at jboss.com
Wed Nov 12 10:12:03 EST 2008


I am encountering an error trying to execute a process that has a timer. I am running jbpm 3.2.1 in its app-server form, using the ear file, on jboss AS 4.2.1.GA. 

The only change we made in the ear was to modify the hibernate config file since we switched the DBMS to MSSQL 2005. That seems to work okay when we execute processes without timer.

However, in trying to execute a process with timer, there is an issue with the TimerServiceBean not being found. I understand from the documentation that the jbpm-enterprise.jar includes the deployment descriptors for JBoss AS. Did I miss a configuration step in setting up ejb/LocalTimerEntityBean?


  | 13:09:16,632 ERROR [EjbSchedulerService] javax.naming.NameNotFoundException: ejb not bound
  | 13:09:16,633 ERROR [GraphElement] action threw exception: ejb local timer lookup problem
  | org.jbpm.JbpmException: ejb local timer lookup problem
  |         at org.jbpm.scheduler.ejbtimer.EjbSchedulerService.<init>(EjbSchedulerService.java:34)
  |         at org.jbpm.scheduler.ejbtimer.EjbSchedulerServiceFactory.openService(EjbSchedulerServiceFactory.java:11)
  |         at org.jbpm.svc.Services.getService(Services.java:141)
  |         at org.jbpm.svc.Services.getCurrentService(Services.java:88)
  |         at org.jbpm.svc.Services.getCurrentService(Services.java:81)
  |         at org.jbpm.scheduler.def.CreateTimerAction.execute(CreateTimerAction.java:66)
  |         at org.jbpm.graph.def.GraphElement.executeAction(GraphElement.java:255)
  |         at org.jbpm.graph.def.GraphElement.executeActions(GraphElement.java:220)
  | 
  |         at org.jbpm.graph.def.GraphElement.fireAndPropagateEvent(GraphElement.java:190)
  |         at org.jbpm.graph.def.GraphElement.fireEvent(GraphElement.java:174)
  |         at org.jbpm.graph.def.Node.enter(Node.java:302)
  |         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_119.enter(Node_$$_javassist_119.java)
  |         at org.jbpm.graph.def.Transition.take(Transition.java:151)
  |         at org.jbpm.graph.def.Node.leave(Node.java:393)
  |         at org.jbpm.graph.node.StartState.leave(StartState.java:70)
  |         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_119.leave(Node_$$_javassist_119.java)
  |         at org.jbpm.graph.exe.Token.signal(Token.java:194)
  |         at org.jbpm.graph.exe.Token.signal(Token.java:139)
  |         at org.jbpm.graph.exe.ProcessInstance.signal(ProcessInstance.java:270)
  |         at com.example.processexecutor.ProcessManager.spawnProcessInstance(ProcessManager.java:75)
  |         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.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:112)
  |         at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:166)
  |         at org.jboss.ejb3.interceptor.EJB3InterceptorsInterceptor.invoke(EJB3InterceptorsInterceptor.java:63)
  |         at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |         at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:54)
  |         at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |         at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:47)
  |         at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |         at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:79)
  |         at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:191)
  |         at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |         at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:76)
  |         at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |         at org.jboss.ejb3.stateless.StatelessInstanceInterceptor.invoke(StatelessInstanceInterceptor.java:62)
  |         at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |         at org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:77)
  |         at org.jboss.ejb3.security.Ejb3AuthenticationInterceptor.invoke(Ejb3AuthenticationInterceptor.java:106)
  |         at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |         at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:46)
  |         at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |         at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)
  |         at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
  |         at org.jboss.ejb3.stateless.StatelessContainer.dynamicInvoke(StatelessContainer.java:278)
  |         at org.jboss.aop.Dispatcher.invoke(Dispatcher.java:106)
  |         at org.jboss.aspects.remoting.AOPRemotingInvocationHandler.invoke(AOPRemotingInvocationHandler.java:82)
  |         at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:734)
  |         at org.jboss.remoting.transport.socket.ServerThread.processInvocation(ServerThread.java:560)
  |         at org.jboss.remoting.transport.socket.ServerThread.dorun(ServerThread.java:369)
  |         at org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:165)
  | 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:627)
  |         at org.jboss.ejb3.naming.MultiplexerContext.lookup(MultiplexerContext.java:200)
  |         at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:718)
  |         at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:589)
  |         at javax.naming.InitialContext.lookup(InitialContext.java:351)
  |         at org.jbpm.scheduler.ejbtimer.EjbSchedulerService.<init>EjbSchedulerService.java:31)
  |         ... 62 more
  | 

This is the output on the console when the ear is initialized:



  | 10:07:07,668 INFO  [EjbModule] Deploying CommandServiceBean
  | 10:07:07,735 INFO  [EjbModule] Deploying TimerServiceBean
  | 10:07:07,742 INFO  [EjbModule] Deploying CommandListenerBean
  | 10:07:07,767 INFO  [EjbModule] Deploying JobListenerBean
  | 10:07:07,876 INFO  [BaseLocalProxyFactory] Bound EJB LocalHome 'CommandServiceBean' to jndi 'CommandServiceBean'
  | 10:07:07,925 INFO  [ProxyFactory] Bound EJB Home 'CommandServiceBean' to jndi 'ejb/CommandServiceBean'
  | 10:07:07,937 INFO  [BaseLocalProxyFactory] Bound EJB LocalHome 'TimerServiceBean' to jndi 'local/TimerServiceBean at 22952850'
  | 10:07:07,997 WARN  [JMSContainerInvoker] Could not find the queue destination-jndi-name=queue/JbpmCommandQueue
  | 10:07:07,998 WARN  [JMSContainerInvoker] destination not found: queue/JbpmCommandQueue reason: javax.naming.NameNotFoundException: JbpmCommandQueue not bound
  | 10:07:07,999 WARN  [JMSContainerInvoker] creating a new temporary destination: queue/JbpmCommandQueue
  | 10:07:08,007 INFO  [JbpmCommandQueue] Bound to JNDI name: queue/JbpmCommandQueue
  | 
  | 10:07:08,078 WARN  [JMSContainerInvoker] Could not find the queue destination-jndi-name=queue/JbpmJobQueue
  | 10:07:08,079 WARN  [JMSContainerInvoker] destination not found: queue/JbpmJobQueue reason: javax.naming.NameNotFoundException: JbpmJobQueue not bound
  | 10:07:08,080 WARN  [JMSContainerInvoker] creating a new temporary destination: queue/JbpmJobQueue
  | 10:07:08,088 INFO  [JbpmJobQueue] Bound to JNDI name: queue/JbpmJobQueue
  | 

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4188817#4188817

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4188817



More information about the jboss-user mailing list