[JBoss JIRA] Updated: (JBPM-288) Fork/Join and child token deactivation
by Tom Baeyens (JIRA)
[ http://jira.jboss.com/jira/browse/JBPM-288?page=all ]
Tom Baeyens updated JBPM-288:
-----------------------------
Fix Version/s: jBPM jPDL 3.2.2
Priority: Critical (was: Major)
> Fork/Join and child token deactivation
> --------------------------------------
>
> Key: JBPM-288
> URL: http://jira.jboss.com/jira/browse/JBPM-288
> Project: JBoss jBPM
> Issue Type: Bug
> Components: Core Engine
> Affects Versions: jBPM 3.0
> Environment: Any
> Reporter: Lukasz Czekierda
> Assigned To: Tom Baeyens
> Priority: Critical
> Fix For: jBPM jPDL 3.2.2
>
> Attachments: processdefinition.xml, SimpleProcessTest.java
>
>
> Join implementation has incorrectly/no implemented activation of finished child tokens. They remain active till the end of the whole process. Example from junit test (Wfp03SynchronizationTest.testSynchronizationFirstTokenFirst) works perfectly as long as is unmodified. After adding a few bottom lines and changing a transition in join I get my error. Token.end is called on children and the root token in the LAST state, when finishing the entire process. When in stateX or stateY, the process still reports two active child tokens.
> ---
> "<process-definition>" +
> " <start-state name='start'>" +
> " <transition to='fork' />" +
> " </start-state>" +
> " <fork name='fork'>" +
> " <transition name='first' to='one' />" +
> " <transition name='second' to='two' />" +
> " </fork>" +
> " <state name='one'>" +
> " <transition to='join' />" +
> " </state>" +
> " <state name='two'>" +
> " <transition to='join' />" +
> " </state>" +
> " <join name='join'>" +
> " <transition to='stateX' />" +
> " </join>" +
> " <state name='stateX'>" +
> " <transition to='stateY' />" +
> " </state>" +
> " <state name='stateY'>" +
> " <transition to='end' />" +
> " </state>" +
> " <end-state name='end' />" +
> "</process-definition>"
--
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
18 years, 10 months
[JBoss JIRA] Created: (JBPM-1046) JobExecutorServlet cannot use local JNDI name to access fatasource
by Jacques Desmazi│res (JIRA)
JobExecutorServlet cannot use local JNDI name to access fatasource
------------------------------------------------------------------
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: Tom Baeyens
Fix For: jBPM jPDL 3.2.1
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
18 years, 10 months
[JBoss JIRA] Moved: (GPD-152) todo.jpdl.xml - Error opening the editor (jBPM Graphical Process Designer)
by Koen Aers (JIRA)
[ http://jira.jboss.com/jira/browse/GPD-152?page=all ]
Koen Aers moved JBIDE-860 to GPD-152:
-------------------------------------
Project: JBoss jBPM GPD (was: JBoss Tools)
Key: GPD-152 (was: JBIDE-860)
Component/s: jpdl
(was: jbpm)
Affects Version/s: jBPM JPDL Designer 3.1.0.CR
(was: 2.0.0.Beta3)
> todo.jpdl.xml - Error opening the editor (jBPM Graphical Process Designer)
> --------------------------------------------------------------------------
>
> Key: GPD-152
> URL: http://jira.jboss.com/jira/browse/GPD-152
> Project: JBoss jBPM GPD
> Issue Type: Bug
> Components: jpdl
> Affects Versions: jBPM JPDL Designer 3.1.0.CR
> Environment: Eclipse Europa / JBoss Tools (2.0 beta3)
> Reporter: Joachim Neubert
> Assigned To: Koen Aers
> Attachments: seam_todo1.jpg, seam_todo2.jpg
>
>
> When I try to open the todo.jpdl.xml, I get a message "Convert to 3.1.x format?" ("older GPD version was detected"). When I confirm the default action "Convert And Open", I get:
> Error opening editor
> Reason: null argument
> ("Details" below)
> With a new process definition, I get the same error:
> New -> JBoss jBPM -> Process Definition -> Process Name: test1
> creates:
> test1
> +- gdp.xml
> +- processdefinition.xml
> Opening the processdefinition.xml in the jBPM Graphical Process Designer results in exactly the same Messages
> "Details"
> org.eclipse.core.runtime.AssertionFailedException: null argument:
> at org.eclipse.core.runtime.Assert.isNotNull(Assert.java:84)
> at org.eclipse.core.runtime.Assert.isNotNull(Assert.java:72)
> at org.eclipse.jface.viewers.StructuredViewer.assertElementsNotNull(StructuredViewer.java:578)
> at org.eclipse.jface.viewers.StructuredViewer.getRawChildren(StructuredViewer.java:938)
> at org.eclipse.jface.viewers.ColumnViewer.getRawChildren(ColumnViewer.java:660)
> at org.eclipse.jface.viewers.AbstractTreeViewer.getRawChildren(AbstractTreeViewer.java:1295)
> at org.eclipse.jface.viewers.TreeViewer.getRawChildren(TreeViewer.java:366)
> at org.eclipse.jface.viewers.AbstractTreeViewer.getFilteredChildren(AbstractTreeViewer.java:615)
> at org.eclipse.jface.viewers.AbstractTreeViewer.getSortedChildren(AbstractTreeViewer.java:581)
> at org.eclipse.jface.viewers.AbstractTreeViewer$1.run(AbstractTreeViewer.java:778)
> at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:67)
> at org.eclipse.jface.viewers.AbstractTreeViewer.createChildren(AbstractTreeViewer.java:755)
> at org.eclipse.jface.viewers.TreeViewer.createChildren(TreeViewer.java:615)
> at org.eclipse.jface.viewers.AbstractTreeViewer.internalInitializeTree(AbstractTreeViewer.java:1460)
> at org.eclipse.jface.viewers.TreeViewer.internalInitializeTree(TreeViewer.java:804)
> at org.eclipse.jface.viewers.AbstractTreeViewer$5.run(AbstractTreeViewer.java:1443)
> at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1368)
> at org.eclipse.jface.viewers.TreeViewer.preservingSelection(TreeViewer.java:378)
> at org.eclipse.jface.viewers.StructuredViewer.preservingSelection(StructuredViewer.java:1330)
> at org.eclipse.jface.viewers.CheckboxTreeViewer.preservingSelection(CheckboxTreeViewer.java:371)
> at org.eclipse.jface.viewers.AbstractTreeViewer.inputChanged(AbstractTreeViewer.java:1432)
> at org.eclipse.jface.viewers.ContentViewer.setInput(ContentViewer.java:251)
> at org.eclipse.jface.viewers.StructuredViewer.setInput(StructuredViewer.java:1606)
> at org.jbpm.gd.jpdl.deployment.DeploymentForm.createIncludeClassesSection(Unknown Source)
> at org.jbpm.gd.jpdl.deployment.DeploymentForm.create(Unknown Source)
> at org.jbpm.gd.jpdl.editor.JpdlDeploymentEditorPage.createForm(Unknown Source)
> at org.jbpm.gd.jpdl.editor.JpdlDeploymentEditorPage.createPartControl(Unknown Source)
> at org.eclipse.ui.part.MultiPageEditorPart.addPage(MultiPageEditorPart.java:190)
> at org.jbpm.gd.common.editor.Editor.addPage(Unknown Source)
> at org.jbpm.gd.jpdl.editor.JpdlEditor.createPages(Unknown Source)
> at org.eclipse.ui.part.MultiPageEditorPart.createPartControl(MultiPageEditorPart.java:283)
> at org.eclipse.ui.internal.EditorReference.createPartHelper(EditorReference.java:661)
> at org.eclipse.ui.internal.EditorReference.createPart(EditorReference.java:426)
> at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:592)
> at org.eclipse.ui.internal.EditorReference.getEditor(EditorReference.java:263)
> at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditorBatched(WorkbenchPage.java:2721)
> at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:2633)
> at org.eclipse.ui.internal.WorkbenchPage.access$12(WorkbenchPage.java:2625)
> at org.eclipse.ui.internal.WorkbenchPage$10.run(WorkbenchPage.java:2577)
> at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:67)
> at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2572)
> at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2556)
> at org.eclipse.ui.actions.OpenWithMenu.openEditor(OpenWithMenu.java:340)
> at org.eclipse.ui.actions.OpenWithMenu.access$0(OpenWithMenu.java:328)
> at org.eclipse.ui.actions.OpenWithMenu$2.handleEvent(OpenWithMenu.java:190)
> at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66)
> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:938)
> at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3682)
> at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3293)
> at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2389)
> at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2353)
> at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2219)
> at org.eclipse.ui.internal.Workbench$4.run(Workbench.java:466)
> at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:289)
> at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:461)
> at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
> at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:106)
> at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:153)
> at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:106)
> at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:76)
> at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:363)
> at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:176)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> at java.lang.reflect.Method.invoke(Unknown Source)
> at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:504)
> at org.eclipse.equinox.launcher.Main.basicRun(Main.java:443)
> at org.eclipse.equinox.launcher.Main.run(Main.java:1169)
--
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
18 years, 10 months