[JBoss JIRA] Resolved: (JBPM-836) "ejb local timer lookup problem" in EjbSchedulerService.java
by Alejandro Guizar (JIRA)
[ http://jira.jboss.com/jira/browse/JBPM-836?page=all ]
Alejandro Guizar resolved JBPM-836.
-----------------------------------
Resolution: Rejected
> "ejb local timer lookup problem" in EjbSchedulerService.java
> ------------------------------------------------------------
>
> Key: JBPM-836
> URL: http://jira.jboss.com/jira/browse/JBPM-836
> Project: JBoss jBPM
> Issue Type: Bug
> Components: Core Engine
> Affects Versions: jBPM jPDL 3.2 beta 2
> Environment: cvs trunk build, jboss AS 4.0.5GA, ejb3, jms messaging
> deploying jbpm-enterprise.ear
> Reporter: Chris Russell
> Assigned To: Alejandro Guizar
> Fix For: jBPM jPDL 3.2.3
>
>
> After deploying the jbpm-enterprise.ear to a jboss 4.0.5ga server getting an exception when trying to signal a transition to the end state.
> ===EXCEPTION SEEN===
> 13:04:56,785 ERROR [ProcessInstanceBean$SignalTokenListener] Action threw an exception: ejb local timer lookup problem
> JNDI name lookup in EjbSchedulerService using incorrect name/and or the TimerServiceBean not declared in
> jboss.xml.
> ===CODE FIXES FOR EXCEPTION==
> RCS file: /cvsroot/jbpm/jbpm.3/enterprise/src/main/java/org/jbpm/scheduler/ejbtimer/EjbSchedulerService.java,v
> retrieving revision 1.1
> diff -r1.1 EjbSchedulerService.java
> 31c31,36
> < LocalTimerServiceHome localTimerServiceHome = (LocalTimerServiceHome) initial.lookup("java:comp/env/ejb/LocalTimerServiceBean");
> ---
> >
> >
> > //RSC wrong name used
> > //LocalTimerServiceHome localTimerServiceHome = (LocalTimerServiceHome) initial.lookup("java:comp/env/ejb/LocalTimerServiceBean");
> > //See also change to jboss.xml to include TimerServiceBean or this fix wont work either.
> > LocalTimerServiceHome localTimerServiceHome = (LocalTimerServiceHome) initial.lookup("TimerServiceBean");
> RCS file: /cvsroot/jbpm/jbpm.3/enterprise/src/main/resources/jar/META-INF/jboss.xml,v
> retrieving revision 1.2
> diff -r1.2 jboss.xml
> 12a13,20
> > <!-- RSC ADDED THIS -->
> > <session>
> > <ejb-name>TimerServiceBean</ejb-name>
> > <jndi-name>ejb/TimerServiceBean</jndi-name>
> > <local-jndi-name>TimerServiceBean</local-jndi-name>
> > </session>
> >
> >
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
16 years, 7 months
[JBoss JIRA] Commented: (JBPM-836) "ejb local timer lookup problem" in EjbSchedulerService.java
by Alejandro Guizar (JIRA)
[ http://jira.jboss.com/jira/browse/JBPM-836?page=comments#action_12414526 ]
Alejandro Guizar commented on JBPM-836:
---------------------------------------
The JNDI name relative to the java:comp/env context will prevail, because the "fix" compromises the portability of the code. As part of JBPM-1180, the docs will describe the environment references that need to be set in user components for the scheduler service (along with the persistence service and the message service) to work.
> "ejb local timer lookup problem" in EjbSchedulerService.java
> ------------------------------------------------------------
>
> Key: JBPM-836
> URL: http://jira.jboss.com/jira/browse/JBPM-836
> Project: JBoss jBPM
> Issue Type: Bug
> Components: Core Engine
> Affects Versions: jBPM jPDL 3.2 beta 2
> Environment: cvs trunk build, jboss AS 4.0.5GA, ejb3, jms messaging
> deploying jbpm-enterprise.ear
> Reporter: Chris Russell
> Assigned To: Alejandro Guizar
> Fix For: jBPM jPDL 3.2.3
>
>
> After deploying the jbpm-enterprise.ear to a jboss 4.0.5ga server getting an exception when trying to signal a transition to the end state.
> ===EXCEPTION SEEN===
> 13:04:56,785 ERROR [ProcessInstanceBean$SignalTokenListener] Action threw an exception: ejb local timer lookup problem
> JNDI name lookup in EjbSchedulerService using incorrect name/and or the TimerServiceBean not declared in
> jboss.xml.
> ===CODE FIXES FOR EXCEPTION==
> RCS file: /cvsroot/jbpm/jbpm.3/enterprise/src/main/java/org/jbpm/scheduler/ejbtimer/EjbSchedulerService.java,v
> retrieving revision 1.1
> diff -r1.1 EjbSchedulerService.java
> 31c31,36
> < LocalTimerServiceHome localTimerServiceHome = (LocalTimerServiceHome) initial.lookup("java:comp/env/ejb/LocalTimerServiceBean");
> ---
> >
> >
> > //RSC wrong name used
> > //LocalTimerServiceHome localTimerServiceHome = (LocalTimerServiceHome) initial.lookup("java:comp/env/ejb/LocalTimerServiceBean");
> > //See also change to jboss.xml to include TimerServiceBean or this fix wont work either.
> > LocalTimerServiceHome localTimerServiceHome = (LocalTimerServiceHome) initial.lookup("TimerServiceBean");
> RCS file: /cvsroot/jbpm/jbpm.3/enterprise/src/main/resources/jar/META-INF/jboss.xml,v
> retrieving revision 1.2
> diff -r1.2 jboss.xml
> 12a13,20
> > <!-- RSC ADDED THIS -->
> > <session>
> > <ejb-name>TimerServiceBean</ejb-name>
> > <jndi-name>ejb/TimerServiceBean</jndi-name>
> > <local-jndi-name>TimerServiceBean</local-jndi-name>
> > </session>
> >
> >
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
16 years, 7 months
[JBoss JIRA] Resolved: (JBPM-1046) JobExecutorServlet cannot use local JNDI name to access datasource
by Alejandro Guizar (JIRA)
[ http://jira.jboss.com/jira/browse/JBPM-1046?page=all ]
Alejandro Guizar resolved JBPM-1046.
------------------------------------
Resolution: Done
Resolved, see http://fisheye.jboss.com/changelog/JBPM/?cs=MAIN:aguizar:20080527040223 for details
> JobExecutorServlet cannot use local JNDI name to access datasource
> ------------------------------------------------------------------
>
> Key: JBPM-1046
> URL: http://jira.jboss.com/jira/browse/JBPM-1046
> Project: JBoss jBPM
> Issue Type: Bug
> Components: Core Engine
> Affects Versions: jBPM jPDL 3.2.1
> Environment: Windows 2000
> IBM Websphere Application Server 6.1 (also reproduced on Websphere Test Environment 5.1)
> Oracle 9i database (with ojdbc14.jar release 9.2.0.8)
> Reporter: Jacques Desmazi?res
> Assigned To: Alejandro Guizar
> Fix For: jBPM jPDL 3.2.3
>
>
> When configuraing jBPM / Hibernate with a datasource in an Enterprise application, using a local JNDI reference (java:comp/env/...) the web application works properly, accessing the database without any problem.
> But if you declare the JobExecutorServlet in the web application's web.xml, each time the this servlet JobExecutorThread fires, it generates exceptions:
> [22/08/07 18:33:03:175 CEST] 0000005e SystemOut O 18:33:03 DEBUG org.jbpm.job.executor.JobExecutorThread : acquiring jobs for execution...
> [22/08/07 18:33:03:315 CEST] 0000005f javaURLContex E NMSV0310E: Une opération JNDI sur un nom "java:" ne peut pas aboutir car le contexte d'exécution du serveur ne peut pas associer l'unité d'exécution de l'opération à un composant d'application J2EE. Cette condition peut se produire lorsque le client JNDI utilisant le nom "java:" n'est pas exécuté sur l'unité d'exécution d'une demande d'application du serveur. Assurez-vous qu'une application J2EE n'exécute pas d'opérations JNDI sur des noms "java:" dans des blocs de code statiques ou dans des unités d'exécution créées par cette application J2EE. Un code de ce type ne s'exécute pas nécessairement sur l'unité d'exécution d'une demande d'application du serveur et n'est donc pas pris en charge par les opérations JNDI sur les noms "java:". Trace de pile d'exceptions :
> javax.naming.ConfigurationException [Root exception is javax.naming.NameNotFoundException: Name comp/env/jdbc not found in context "java:".]
> at com.ibm.ws.naming.java.javaURLContextImpl.throwConfigurationExceptionWithDefaultJavaNS(javaURLContextImpl.java:411)
> at com.ibm.ws.naming.java.javaURLContextImpl.lookup(javaURLContextImpl.java:388)
> at com.ibm.ws.naming.java.javaURLContextRoot.lookup(javaURLContextRoot.java:204)
> at com.ibm.ws.naming.java.javaURLContextRoot.lookup(javaURLContextRoot.java:144)
> at javax.naming.InitialContext.lookup(InitialContext.java:363)
> at org.hibernate.connection.DatasourceConnectionProvider.configure(DatasourceConnectionProvider.java:52)
> at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:124)
> at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:56)
> at org.hibernate.cfg.SettingsFactory.createConnectionProvider(SettingsFactory.java:410)
> at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:62)
> at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2009)
> at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1292)
> at org.jbpm.persistence.db.DbPersistenceServiceFactory.getSessionFactory(DbPersistenceServiceFactory.java:91)
> at org.jbpm.persistence.db.DbPersistenceService.getSessionFactory(DbPersistenceService.java:94)
> at org.jbpm.persistence.db.DbPersistenceService.getSession(DbPersistenceService.java:98)
> at org.jbpm.persistence.db.DbPersistenceService.getJobSession(DbPersistenceService.java:354)
> at org.jbpm.JbpmContext.getJobSession(JbpmContext.java:563)
> at org.jbpm.job.executor.JobExecutorThread.acquireJobs(JobExecutorThread.java:109)
> at org.jbpm.job.executor.JobExecutorThread.run(JobExecutorThread.java:56)
> Caused by: javax.naming.NameNotFoundException: Name comp/env/jdbc not found in context "java:".
> at com.ibm.ws.naming.ipbase.NameSpace.getParentCtxInternal(NameSpace.java:1767)
> at com.ibm.ws.naming.ipbase.NameSpace.lookupInternal(NameSpace.java:1083)
> at com.ibm.ws.naming.ipbase.NameSpace.lookup(NameSpace.java:991)
> at com.ibm.ws.naming.urlbase.UrlContextImpl.lookup(UrlContextImpl.java:1263)
> at com.ibm.ws.naming.java.javaURLContextImpl.lookup(javaURLContextImpl.java:384)
> ... 17 more
>
> [22/08/07 18:33:03:347 CEST] 0000005e SystemOut O 18:33:03 FATAL org.hibernate.connection.DatasourceConnectionProvider : Could not find datasource: java:comp/env/jdbc/dsJBPM
> javax.naming.ConfigurationException: A JNDI operation on a "java:" name cannot be completed because the serverruntime is not able to associate the operation's thread with any J2EE application component. This condition can occur when the JNDI client using the "java:" name is not executed on the thread of a server application request. Make sure that a J2EE application does not execute JNDI operations on "java:" names within static code blocks or in threads created by that J2EE application. Such code does not necessarily run on the thread of a server application request and therefore is not supported by JNDI operations on "java:" names. [Root exception is javax.naming.NameNotFoundException: Name comp/env/jdbc not found in context "java:".]
> at com.ibm.ws.naming.java.javaURLContextImpl.throwConfigurationExceptionWithDefaultJavaNS(javaURLContextImpl.java:416)
> at com.ibm.ws.naming.java.javaURLContextImpl.lookup(javaURLContextImpl.java:388)
> at com.ibm.ws.naming.java.javaURLContextRoot.lookup(javaURLContextRoot.java:204)
> at com.ibm.ws.naming.java.javaURLContextRoot.lookup(javaURLContextRoot.java:144)
> at javax.naming.InitialContext.lookup(InitialContext.java:363)
> at org.hibernate.connection.DatasourceConnectionProvider.configure(DatasourceConnectionProvider.java:52)
> at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:124)
> at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:56)
> at org.hibernate.cfg.SettingsFactory.createConnectionProvider(SettingsFactory.java:410)
> at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:62)
> at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2009)
> at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1292)
> at org.jbpm.persistence.db.DbPersistenceServiceFactory.getSessionFactory(DbPersistenceServiceFactory.java:91)
> at org.jbpm.persistence.db.DbPersistenceService.getSessionFactory(DbPersistenceService.java:94)
> at org.jbpm.persistence.db.DbPersistenceService.getSession(DbPersistenceService.java:98)
> at org.jbpm.persistence.db.DbPersistenceService.getJobSession(DbPersistenceService.java:354)
> at org.jbpm.JbpmContext.getJobSession(JbpmContext.java:563)
> at org.jbpm.job.executor.JobExecutorThread.acquireJobs(JobExecutorThread.java:109)
> at org.jbpm.job.executor.JobExecutorThread.run(JobExecutorThread.java:56)
> Caused by:
> javax.naming.NameNotFoundException: Name comp/env/jdbc not found in context "java:".
> at com.ibm.ws.naming.ipbase.NameSpace.getParentCtxInternal(NameSpace.java:1767)
> at com.ibm.ws.naming.ipbase.NameSpace.lookupInternal(NameSpace.java:1083)
> at com.ibm.ws.naming.ipbase.NameSpace.lookup(NameSpace.java:991)
> at com.ibm.ws.naming.urlbase.UrlContextImpl.lookup(UrlContextImpl.java:1263)
> at com.ibm.ws.naming.java.javaURLContextImpl.lookup(javaURLContextImpl.java:384)
> ... 17 more
> [22/08/07 18:33:03:347 CEST] 0000005e SystemOut O 18:33:03 ERROR org.jbpm.job.executor.JobExecutorThread : exception in job executor thread. waiting 10000 milliseconds
> org.hibernate.HibernateException: Could not find datasource
> at org.hibernate.connection.DatasourceConnectionProvider.configure(DatasourceConnectionProvider.java:56)
> at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:124)
> at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:56)
> at org.hibernate.cfg.SettingsFactory.createConnectionProvider(SettingsFactory.java:410)
> at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:62)
> at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2009)
> at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1292)
> at org.jbpm.persistence.db.DbPersistenceServiceFactory.getSessionFactory(DbPersistenceServiceFactory.java:91)
> at org.jbpm.persistence.db.DbPersistenceService.getSessionFactory(DbPersistenceService.java:94)
> at org.jbpm.persistence.db.DbPersistenceService.getSession(DbPersistenceService.java:98)
> at org.jbpm.persistence.db.DbPersistenceService.getJobSession(DbPersistenceService.java:354)
> at org.jbpm.JbpmContext.getJobSession(JbpmContext.java:563)
> at org.jbpm.job.executor.JobExecutorThread.acquireJobs(JobExecutorThread.java:109)
> at org.jbpm.job.executor.JobExecutorThread.run(JobExecutorThread.java:56)
> Caused by:
> javax.naming.ConfigurationException: A JNDI operation on a "java:" name cannot be completed because the serverruntime is not able to associate the operation's thread with any J2EE application component. This condition can occur when the JNDI client using the "java:" name is not executed on the thread of a server application request. Make sure that a J2EE application does not execute JNDI operations on "java:" names within static code blocks or in threads created by that J2EE application. Such code does not necessarily run on the thread of a server application request and therefore is not supported by JNDI operations on "java:" names. [Root exception is javax.naming.NameNotFoundException: Name comp/env/jdbc not found in context "java:".]
> at com.ibm.ws.naming.java.javaURLContextImpl.throwConfigurationExceptionWithDefaultJavaNS(javaURLContextImpl.java:416)
> at com.ibm.ws.naming.java.javaURLContextImpl.lookup(javaURLContextImpl.java:388)
> at com.ibm.ws.naming.java.javaURLContextRoot.lookup(javaURLContextRoot.java:204)
> at com.ibm.ws.naming.java.javaURLContextRoot.lookup(javaURLContextRoot.java:144)
> at javax.naming.InitialContext.lookup(InitialContext.java:363)
> at org.hibernate.connection.DatasourceConnectionProvider.configure(DatasourceConnectionProvider.java:52)
> ... 13 more
> Caused by:
> javax.naming.NameNotFoundException: Name comp/env/jdbc not found in context "java:".
> at com.ibm.ws.naming.ipbase.NameSpace.getParentCtxInternal(NameSpace.java:1767)
> at com.ibm.ws.naming.ipbase.NameSpace.lookupInternal(NameSpace.java:1083)
> at com.ibm.ws.naming.ipbase.NameSpace.lookup(NameSpace.java:991)
> at com.ibm.ws.naming.urlbase.UrlContextImpl.lookup(UrlContextImpl.java:1263)
> at com.ibm.ws.naming.java.javaURLContextImpl.lookup(javaURLContextImpl.java:384)
> ... 17 more
> The exception is raised even if there is no timer in the process definition.
> If I replace the local JNDI reference (java:comp/env/jdbc/datasource) with the global JNDI name (jdbc/dsOracle) the JobExecutorThread works fine (even if Websphere logs warning due to direct use of the global JNDI reference). The JobExecutorThread also works if I replace the datasource with the database access parameters (driver, url, ...).
> (sample ear is available to reproduce the bug if necessary)
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
16 years, 7 months
[JBoss JIRA] Assigned: (JBPM-1046) JobExecutorServlet cannot use local JNDI name to access datasource
by Alejandro Guizar (JIRA)
[ http://jira.jboss.com/jira/browse/JBPM-1046?page=all ]
Alejandro Guizar reassigned JBPM-1046:
--------------------------------------
Assignee: Alejandro Guizar (was: Tom Baeyens)
> JobExecutorServlet cannot use local JNDI name to access datasource
> ------------------------------------------------------------------
>
> Key: JBPM-1046
> URL: http://jira.jboss.com/jira/browse/JBPM-1046
> Project: JBoss jBPM
> Issue Type: Bug
> Components: Core Engine
> Affects Versions: jBPM jPDL 3.2.1
> Environment: Windows 2000
> IBM Websphere Application Server 6.1 (also reproduced on Websphere Test Environment 5.1)
> Oracle 9i database (with ojdbc14.jar release 9.2.0.8)
> Reporter: Jacques Desmazi?res
> Assigned To: Alejandro Guizar
> Fix For: jBPM jPDL 3.2.3
>
>
> When configuraing jBPM / Hibernate with a datasource in an Enterprise application, using a local JNDI reference (java:comp/env/...) the web application works properly, accessing the database without any problem.
> But if you declare the JobExecutorServlet in the web application's web.xml, each time the this servlet JobExecutorThread fires, it generates exceptions:
> [22/08/07 18:33:03:175 CEST] 0000005e SystemOut O 18:33:03 DEBUG org.jbpm.job.executor.JobExecutorThread : acquiring jobs for execution...
> [22/08/07 18:33:03:315 CEST] 0000005f javaURLContex E NMSV0310E: Une opération JNDI sur un nom "java:" ne peut pas aboutir car le contexte d'exécution du serveur ne peut pas associer l'unité d'exécution de l'opération à un composant d'application J2EE. Cette condition peut se produire lorsque le client JNDI utilisant le nom "java:" n'est pas exécuté sur l'unité d'exécution d'une demande d'application du serveur. Assurez-vous qu'une application J2EE n'exécute pas d'opérations JNDI sur des noms "java:" dans des blocs de code statiques ou dans des unités d'exécution créées par cette application J2EE. Un code de ce type ne s'exécute pas nécessairement sur l'unité d'exécution d'une demande d'application du serveur et n'est donc pas pris en charge par les opérations JNDI sur les noms "java:". Trace de pile d'exceptions :
> javax.naming.ConfigurationException [Root exception is javax.naming.NameNotFoundException: Name comp/env/jdbc not found in context "java:".]
> at com.ibm.ws.naming.java.javaURLContextImpl.throwConfigurationExceptionWithDefaultJavaNS(javaURLContextImpl.java:411)
> at com.ibm.ws.naming.java.javaURLContextImpl.lookup(javaURLContextImpl.java:388)
> at com.ibm.ws.naming.java.javaURLContextRoot.lookup(javaURLContextRoot.java:204)
> at com.ibm.ws.naming.java.javaURLContextRoot.lookup(javaURLContextRoot.java:144)
> at javax.naming.InitialContext.lookup(InitialContext.java:363)
> at org.hibernate.connection.DatasourceConnectionProvider.configure(DatasourceConnectionProvider.java:52)
> at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:124)
> at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:56)
> at org.hibernate.cfg.SettingsFactory.createConnectionProvider(SettingsFactory.java:410)
> at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:62)
> at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2009)
> at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1292)
> at org.jbpm.persistence.db.DbPersistenceServiceFactory.getSessionFactory(DbPersistenceServiceFactory.java:91)
> at org.jbpm.persistence.db.DbPersistenceService.getSessionFactory(DbPersistenceService.java:94)
> at org.jbpm.persistence.db.DbPersistenceService.getSession(DbPersistenceService.java:98)
> at org.jbpm.persistence.db.DbPersistenceService.getJobSession(DbPersistenceService.java:354)
> at org.jbpm.JbpmContext.getJobSession(JbpmContext.java:563)
> at org.jbpm.job.executor.JobExecutorThread.acquireJobs(JobExecutorThread.java:109)
> at org.jbpm.job.executor.JobExecutorThread.run(JobExecutorThread.java:56)
> Caused by: javax.naming.NameNotFoundException: Name comp/env/jdbc not found in context "java:".
> at com.ibm.ws.naming.ipbase.NameSpace.getParentCtxInternal(NameSpace.java:1767)
> at com.ibm.ws.naming.ipbase.NameSpace.lookupInternal(NameSpace.java:1083)
> at com.ibm.ws.naming.ipbase.NameSpace.lookup(NameSpace.java:991)
> at com.ibm.ws.naming.urlbase.UrlContextImpl.lookup(UrlContextImpl.java:1263)
> at com.ibm.ws.naming.java.javaURLContextImpl.lookup(javaURLContextImpl.java:384)
> ... 17 more
>
> [22/08/07 18:33:03:347 CEST] 0000005e SystemOut O 18:33:03 FATAL org.hibernate.connection.DatasourceConnectionProvider : Could not find datasource: java:comp/env/jdbc/dsJBPM
> javax.naming.ConfigurationException: A JNDI operation on a "java:" name cannot be completed because the serverruntime is not able to associate the operation's thread with any J2EE application component. This condition can occur when the JNDI client using the "java:" name is not executed on the thread of a server application request. Make sure that a J2EE application does not execute JNDI operations on "java:" names within static code blocks or in threads created by that J2EE application. Such code does not necessarily run on the thread of a server application request and therefore is not supported by JNDI operations on "java:" names. [Root exception is javax.naming.NameNotFoundException: Name comp/env/jdbc not found in context "java:".]
> at com.ibm.ws.naming.java.javaURLContextImpl.throwConfigurationExceptionWithDefaultJavaNS(javaURLContextImpl.java:416)
> at com.ibm.ws.naming.java.javaURLContextImpl.lookup(javaURLContextImpl.java:388)
> at com.ibm.ws.naming.java.javaURLContextRoot.lookup(javaURLContextRoot.java:204)
> at com.ibm.ws.naming.java.javaURLContextRoot.lookup(javaURLContextRoot.java:144)
> at javax.naming.InitialContext.lookup(InitialContext.java:363)
> at org.hibernate.connection.DatasourceConnectionProvider.configure(DatasourceConnectionProvider.java:52)
> at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:124)
> at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:56)
> at org.hibernate.cfg.SettingsFactory.createConnectionProvider(SettingsFactory.java:410)
> at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:62)
> at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2009)
> at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1292)
> at org.jbpm.persistence.db.DbPersistenceServiceFactory.getSessionFactory(DbPersistenceServiceFactory.java:91)
> at org.jbpm.persistence.db.DbPersistenceService.getSessionFactory(DbPersistenceService.java:94)
> at org.jbpm.persistence.db.DbPersistenceService.getSession(DbPersistenceService.java:98)
> at org.jbpm.persistence.db.DbPersistenceService.getJobSession(DbPersistenceService.java:354)
> at org.jbpm.JbpmContext.getJobSession(JbpmContext.java:563)
> at org.jbpm.job.executor.JobExecutorThread.acquireJobs(JobExecutorThread.java:109)
> at org.jbpm.job.executor.JobExecutorThread.run(JobExecutorThread.java:56)
> Caused by:
> javax.naming.NameNotFoundException: Name comp/env/jdbc not found in context "java:".
> at com.ibm.ws.naming.ipbase.NameSpace.getParentCtxInternal(NameSpace.java:1767)
> at com.ibm.ws.naming.ipbase.NameSpace.lookupInternal(NameSpace.java:1083)
> at com.ibm.ws.naming.ipbase.NameSpace.lookup(NameSpace.java:991)
> at com.ibm.ws.naming.urlbase.UrlContextImpl.lookup(UrlContextImpl.java:1263)
> at com.ibm.ws.naming.java.javaURLContextImpl.lookup(javaURLContextImpl.java:384)
> ... 17 more
> [22/08/07 18:33:03:347 CEST] 0000005e SystemOut O 18:33:03 ERROR org.jbpm.job.executor.JobExecutorThread : exception in job executor thread. waiting 10000 milliseconds
> org.hibernate.HibernateException: Could not find datasource
> at org.hibernate.connection.DatasourceConnectionProvider.configure(DatasourceConnectionProvider.java:56)
> at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:124)
> at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:56)
> at org.hibernate.cfg.SettingsFactory.createConnectionProvider(SettingsFactory.java:410)
> at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:62)
> at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2009)
> at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1292)
> at org.jbpm.persistence.db.DbPersistenceServiceFactory.getSessionFactory(DbPersistenceServiceFactory.java:91)
> at org.jbpm.persistence.db.DbPersistenceService.getSessionFactory(DbPersistenceService.java:94)
> at org.jbpm.persistence.db.DbPersistenceService.getSession(DbPersistenceService.java:98)
> at org.jbpm.persistence.db.DbPersistenceService.getJobSession(DbPersistenceService.java:354)
> at org.jbpm.JbpmContext.getJobSession(JbpmContext.java:563)
> at org.jbpm.job.executor.JobExecutorThread.acquireJobs(JobExecutorThread.java:109)
> at org.jbpm.job.executor.JobExecutorThread.run(JobExecutorThread.java:56)
> Caused by:
> javax.naming.ConfigurationException: A JNDI operation on a "java:" name cannot be completed because the serverruntime is not able to associate the operation's thread with any J2EE application component. This condition can occur when the JNDI client using the "java:" name is not executed on the thread of a server application request. Make sure that a J2EE application does not execute JNDI operations on "java:" names within static code blocks or in threads created by that J2EE application. Such code does not necessarily run on the thread of a server application request and therefore is not supported by JNDI operations on "java:" names. [Root exception is javax.naming.NameNotFoundException: Name comp/env/jdbc not found in context "java:".]
> at com.ibm.ws.naming.java.javaURLContextImpl.throwConfigurationExceptionWithDefaultJavaNS(javaURLContextImpl.java:416)
> at com.ibm.ws.naming.java.javaURLContextImpl.lookup(javaURLContextImpl.java:388)
> at com.ibm.ws.naming.java.javaURLContextRoot.lookup(javaURLContextRoot.java:204)
> at com.ibm.ws.naming.java.javaURLContextRoot.lookup(javaURLContextRoot.java:144)
> at javax.naming.InitialContext.lookup(InitialContext.java:363)
> at org.hibernate.connection.DatasourceConnectionProvider.configure(DatasourceConnectionProvider.java:52)
> ... 13 more
> Caused by:
> javax.naming.NameNotFoundException: Name comp/env/jdbc not found in context "java:".
> at com.ibm.ws.naming.ipbase.NameSpace.getParentCtxInternal(NameSpace.java:1767)
> at com.ibm.ws.naming.ipbase.NameSpace.lookupInternal(NameSpace.java:1083)
> at com.ibm.ws.naming.ipbase.NameSpace.lookup(NameSpace.java:991)
> at com.ibm.ws.naming.urlbase.UrlContextImpl.lookup(UrlContextImpl.java:1263)
> at com.ibm.ws.naming.java.javaURLContextImpl.lookup(javaURLContextImpl.java:384)
> ... 17 more
> The exception is raised even if there is no timer in the process definition.
> If I replace the local JNDI reference (java:comp/env/jdbc/datasource) with the global JNDI name (jdbc/dsOracle) the JobExecutorThread works fine (even if Websphere logs warning due to direct use of the global JNDI reference). The JobExecutorThread also works if I replace the datasource with the database access parameters (driver, url, ...).
> (sample ear is available to reproduce the bug if necessary)
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
16 years, 7 months
[JBoss JIRA] Updated: (JBPM-1032) task-assign-events are sometimes fired when group assignment is performed
by Koen Aers (JIRA)
[ http://jira.jboss.com/jira/browse/JBPM-1032?page=all ]
Koen Aers updated JBPM-1032:
----------------------------
Fix Version/s: jBPM jPDL 3.2.4
(was: jBPM jPDL 3.2.3)
> task-assign-events are sometimes fired when group assignment is performed
> -------------------------------------------------------------------------
>
> Key: JBPM-1032
> URL: http://jira.jboss.com/jira/browse/JBPM-1032
> Project: JBoss jBPM
> Issue Type: Bug
> Components: Core Engine
> Affects Versions: jBPM jPDL 3.2.1
> Reporter: Karsten Dello
> Assigned To: Tom Baeyens
> Fix For: jBPM jPDL 3.2.4
>
>
> A "task-assingn"-event is sometimes fired, if only group assignment (setting pooledActors) is performed. This always happens when a swimlane is in use which specifies pooled-actors (junit test 1).
> On the other hand, when the pooled-actors are expressed via an assignment-element as an child element of a task (junit test 2), the event is not fired.
> From my point of view the engine should either:
> a) not fire an task-assign-event in case of group assignments at all
> b) fire it consequently at all group assignments events
> c) fire a different event
> Ronald suggested in the forum thread (link above) to introduce a seperate event "task-group-assign" in case a task gets assigned to a group. In my opinion this would be the best solution to this problem.
> public void testTaskAssignIsFiredWithSwimlaneGroupAssignment() {
> ProcessDefinition processDefinition = ProcessDefinition.parseXmlString(
> "<process-definition name=\"someprocessxyz\">" +
>
> " <event type=\"task-assign\">" +
> " <script>System.out.println(\"task-assign-event fired!\");" +
> " executionContext.setVariable(\"task-assign-event-has-fired\",Boolean.TRUE);</script>"+
> " </event>"+
> " <start-state>" +
> " <transition to='a' />" +
> " </start-state>" +
>
> " <swimlane name='swimlane22'>"+
> " <assignment pooled-actors='jan,nina'/>"+
> " </swimlane>"+
> " <task-node name='a'>" +
> " <task name='sometask' swimlane='swimlane22'/>" +
> " <transition to='end'/>"+
> " </task-node>"+
>
> " <end-state name='end' />" +
>
> "</process-definition>"
> );
> ProcessInstance processInstance = new ProcessInstance(processDefinition);
> Token token = processInstance.getRootToken();
>
> processInstance.signal();
> Object o=processInstance.getContextInstance().getVariable("task-assign-event-has-fired");
> assertEquals(Boolean.TRUE, o);
>
> }
> public void testTaskAssignIsNOTFiredWithSwimlaneGroupAssignment() {
> ProcessDefinition processDefinition = ProcessDefinition.parseXmlString(
> "<process-definition name=\"someprocessxyz\">" +
>
> " <event type=\"task-assign\">" +
> " <script>System.out.println(\"task-assign-event fired!\")"+
> " executionContext.setVariable(\"task-assign-event-has-fired\",Boolean.TRUE);</script>"+
> " </event>"+
> " <start-state>" +
> " <transition to='a' />" +
> " </start-state>" +
>
> " <task-node name='a'>" +
> " <task name='sometask'>" +
> " <assignment pooled-actors='jan,nina'/>"+
> " </task>"+
> " <transition to='end'/>"+
> " </task-node>"+
>
> " <end-state name='end' />" +
>
> "</process-definition>"
> );
> ProcessInstance processInstance = new ProcessInstance(processDefinition);
> Token token = processInstance.getRootToken();
> processInstance.signal();
>
> Object o=processInstance.getContextInstance().getVariable("task-assign-event-has-fired");
> assertEquals(Boolean.TRUE, o);
> }
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
16 years, 7 months
[JBoss JIRA] Commented: (JBPM-720) create a schema for the jbpm ws frontend
by Mauricio Salatino (JIRA)
[ http://jira.jboss.com/jira/browse/JBPM-720?page=comments#action_12413293 ]
Mauricio Salatino commented on JBPM-720:
----------------------------------------
Hi..Diego Leon and I wanna contribute with this (because we have the time).. I was testing jbpm in 3.2 in JBoss 4.2.2.GA and it works fine.. I was thinking to implement this WS Interfaces as a separate War Maven project using JBoss WS 2.0, with this we are able to use JAX-WS and make compatibility with Metro and CXF..
In the main branch of the repository (jbpm.3) we only find a few classes about this under jpdl/ws.. this is all about this?
Ronald can you contact me in private? or we discuss this here?
Just in case my mail is salaboy at gmail dot com
Thanks
> create a schema for the jbpm ws frontend
> ----------------------------------------
>
> Key: JBPM-720
> URL: http://jira.jboss.com/jira/browse/JBPM-720
> Project: JBoss jBPM
> Issue Type: Sub-task
> Environment: n/a
> Reporter: Ronald van Kuijk
> Assigned To: Ronald van Kuijk
> Priority: Minor
> Fix For: jBPM 3.3
>
> Original Estimate: 1 day
> Remaining Estimate: 1 day
>
> It should work with jboss ws 1.0.2.GA (or all since 1.0?)
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
16 years, 7 months
[JBoss JIRA] Assigned: (JBPM-836) "ejb local timer lookup problem" in EjbSchedulerService.java
by Alejandro Guizar (JIRA)
[ http://jira.jboss.com/jira/browse/JBPM-836?page=all ]
Alejandro Guizar reassigned JBPM-836:
-------------------------------------
Assignee: Alejandro Guizar (was: Tom Baeyens)
> "ejb local timer lookup problem" in EjbSchedulerService.java
> ------------------------------------------------------------
>
> Key: JBPM-836
> URL: http://jira.jboss.com/jira/browse/JBPM-836
> Project: JBoss jBPM
> Issue Type: Bug
> Components: Core Engine
> Affects Versions: jBPM jPDL 3.2 beta 2
> Environment: cvs trunk build, jboss AS 4.0.5GA, ejb3, jms messaging
> deploying jbpm-enterprise.ear
> Reporter: Chris Russell
> Assigned To: Alejandro Guizar
> Fix For: jBPM jPDL 3.2.3
>
>
> After deploying the jbpm-enterprise.ear to a jboss 4.0.5ga server getting an exception when trying to signal a transition to the end state.
> ===EXCEPTION SEEN===
> 13:04:56,785 ERROR [ProcessInstanceBean$SignalTokenListener] Action threw an exception: ejb local timer lookup problem
> JNDI name lookup in EjbSchedulerService using incorrect name/and or the TimerServiceBean not declared in
> jboss.xml.
> ===CODE FIXES FOR EXCEPTION==
> RCS file: /cvsroot/jbpm/jbpm.3/enterprise/src/main/java/org/jbpm/scheduler/ejbtimer/EjbSchedulerService.java,v
> retrieving revision 1.1
> diff -r1.1 EjbSchedulerService.java
> 31c31,36
> < LocalTimerServiceHome localTimerServiceHome = (LocalTimerServiceHome) initial.lookup("java:comp/env/ejb/LocalTimerServiceBean");
> ---
> >
> >
> > //RSC wrong name used
> > //LocalTimerServiceHome localTimerServiceHome = (LocalTimerServiceHome) initial.lookup("java:comp/env/ejb/LocalTimerServiceBean");
> > //See also change to jboss.xml to include TimerServiceBean or this fix wont work either.
> > LocalTimerServiceHome localTimerServiceHome = (LocalTimerServiceHome) initial.lookup("TimerServiceBean");
> RCS file: /cvsroot/jbpm/jbpm.3/enterprise/src/main/resources/jar/META-INF/jboss.xml,v
> retrieving revision 1.2
> diff -r1.2 jboss.xml
> 12a13,20
> > <!-- RSC ADDED THIS -->
> > <session>
> > <ejb-name>TimerServiceBean</ejb-name>
> > <jndi-name>ejb/TimerServiceBean</jndi-name>
> > <local-jndi-name>TimerServiceBean</local-jndi-name>
> > </session>
> >
> >
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
16 years, 7 months