[jbpm-commits] JBoss JBPM SVN: r5726 - in jbpm4/trunk: modules and 29 other directories.

do-not-reply at jboss.org do-not-reply at jboss.org
Fri Oct 9 11:29:26 EDT 2009


Author: tom.baeyens at jboss.com
Date: 2009-10-09 11:29:24 -0400 (Fri, 09 Oct 2009)
New Revision: 5726

Added:
   jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/
   jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/
   jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/
   jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-destinations-service.xml
   jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-enterprise.jar/
   jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-enterprise.jar/META-INF/
   jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-enterprise.jar/META-INF/ejb-jar.xml
   jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-enterprise.jar/META-INF/jboss.xml
   jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-enterprise.jar/META-INF/jbosscmp-jdbc.xml
   jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/
   jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/META-INF/
   jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/META-INF/jboss-service.xml
   jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/jbpm-service-jboss-beans.xml
   jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/jbpm.cfg.xml
   jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/jbpm.mail.properties
   jbpm4/trunk/modules/jboss/
   jbpm4/trunk/modules/jboss/.classpath
   jbpm4/trunk/modules/jboss/.project
   jbpm4/trunk/modules/jboss/pom.xml
   jbpm4/trunk/modules/jboss/src/
   jbpm4/trunk/modules/jboss/src/main/
   jbpm4/trunk/modules/jboss/src/main/java/
   jbpm4/trunk/modules/jboss/src/main/java/org/
   jbpm4/trunk/modules/jboss/src/main/java/org/jbpm/
   jbpm4/trunk/modules/jboss/src/main/java/org/jbpm/jboss/
   jbpm4/trunk/modules/jboss/src/main/java/org/jbpm/jboss/internal/
   jbpm4/trunk/modules/jboss/src/main/java/org/jbpm/jboss/internal/JbpmService.java
Removed:
   jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config.common/
   jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config.jboss4/
   jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config.jboss5/
   jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/
   jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/
   jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-destinations-service.xml
   jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-enterprise.jar/
   jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-enterprise.jar/META-INF/
   jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-enterprise.jar/META-INF/ejb-jar.xml
   jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-enterprise.jar/META-INF/jboss.xml
   jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-enterprise.jar/META-INF/jbosscmp-jdbc.xml
   jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/
   jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/META-INF/
   jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/META-INF/jboss-service.xml
   jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/jbpm-service-jboss-beans.xml
   jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/jbpm.cfg.xml
   jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/jbpm.mail.properties
   jbpm4/trunk/modules/integration/.project
   jbpm4/trunk/modules/integration/jboss4/
   jbpm4/trunk/modules/integration/jboss5/
   jbpm4/trunk/modules/integration/spi/
   jbpm4/trunk/modules/jboss/.classpath
   jbpm4/trunk/modules/jboss/.project
   jbpm4/trunk/modules/jboss/pom.xml
   jbpm4/trunk/modules/jboss/src/
   jbpm4/trunk/modules/jboss/src/main/
   jbpm4/trunk/modules/jboss/src/main/java/
   jbpm4/trunk/modules/jboss/src/main/java/org/
   jbpm4/trunk/modules/jboss/src/main/java/org/jbpm/
   jbpm4/trunk/modules/jboss/src/main/java/org/jbpm/jboss/
   jbpm4/trunk/modules/jboss/src/main/java/org/jbpm/jboss/internal/
   jbpm4/trunk/modules/jboss/src/main/java/org/jbpm/jboss/internal/JbpmService.java
Modified:
   jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/Configuration.java
   jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/ProcessEngine.java
   jbpm4/trunk/modules/distro/pom.xml
   jbpm4/trunk/modules/distro/src/main/files/install/build.xml
   jbpm4/trunk/modules/distro/src/main/files/install/src/cfg/jbpm/jta.testsuite.jbpm.cfg.xml
   jbpm4/trunk/modules/integration/form-plugin/pom.xml
   jbpm4/trunk/modules/integration/form-plugin/src/main/java/org/jbpm/integration/console/forms/AbstractFormDispatcher.java
   jbpm4/trunk/modules/integration/graphView-plugin/pom.xml
   jbpm4/trunk/modules/integration/graphView-plugin/src/main/java/org/jbpm/integration/console/graphView/GraphViewerPluginImpl.java
   jbpm4/trunk/modules/integration/pom.xml
   jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cfg/ProcessEngineImpl.java
   jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/env/JbpmConfigurationParser.java
   jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/wire/binding/JobExecutorBinding.java
   jbpm4/trunk/modules/test-cactus/src/test/java/org/jbpm/test/AllIntegrationTests.java
   jbpm4/trunk/pom.xml
Log:
JBPM-2501 revisit jboss jbpm service archive architecture

Modified: jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/Configuration.java
===================================================================
--- jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/Configuration.java	2009-10-09 14:58:08 UTC (rev 5725)
+++ jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/Configuration.java	2009-10-09 15:29:24 UTC (rev 5726)
@@ -38,7 +38,7 @@
   
   static Map<String, String> implementationClassNames = null;
 
-  Configuration impl;
+  transient Configuration impl;
   
   /** 
    * Cached processEngine instance used by the 

Modified: jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/ProcessEngine.java
===================================================================
--- jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/ProcessEngine.java	2009-10-09 14:58:08 UTC (rev 5725)
+++ jbpm4/trunk/modules/api/src/main/java/org/jbpm/api/ProcessEngine.java	2009-10-09 15:29:24 UTC (rev 5726)
@@ -83,6 +83,11 @@
    * a service method in the same thread.
    * This method returns the process engine for convenient method concatenations. */
   ProcessEngine setJdbcConnection(Connection jdbcConnection);
-  
+
+  /** perform a user command.  that allows users to span a transaction over
+   * their own updates, as well as the jbpm operations. */
   <T> T execute(Command<T> command);
+
+  /** clean shutdown of the engine. */
+  void close();
 }

Modified: jbpm4/trunk/modules/distro/pom.xml
===================================================================
--- jbpm4/trunk/modules/distro/pom.xml	2009-10-09 14:58:08 UTC (rev 5725)
+++ jbpm4/trunk/modules/distro/pom.xml	2009-10-09 15:29:24 UTC (rev 5726)
@@ -65,14 +65,10 @@
     </dependency>
     <dependency>
       <groupId>org.jbpm.jbpm4</groupId>
-      <artifactId>jbpm-jboss4</artifactId>
+      <artifactId>jbpm-jboss</artifactId>      
     </dependency>
     <dependency>
       <groupId>org.jbpm.jbpm4</groupId>
-      <artifactId>jbpm-jboss5</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.jbpm.jbpm4</groupId>
       <artifactId>jbpm-tomcat6</artifactId>
     </dependency>
     <dependency>
@@ -94,10 +90,6 @@
     </dependency>
     <dependency>
       <groupId>org.jbpm.jbpm4</groupId>
-      <artifactId>jbpm-spi</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.jbpm.jbpm4</groupId>
       <artifactId>jbpm-test-db</artifactId>
       <classifier>tests</classifier>
     </dependency>

Modified: jbpm4/trunk/modules/distro/src/main/files/install/build.xml
===================================================================
--- jbpm4/trunk/modules/distro/src/main/files/install/build.xml	2009-10-09 14:58:08 UTC (rev 5725)
+++ jbpm4/trunk/modules/distro/src/main/files/install/build.xml	2009-10-09 15:29:24 UTC (rev 5726)
@@ -271,7 +271,7 @@
           description="Installs jBPM into JBoss">
     <!-- copy static configuration files -->
     <copy todir="${jboss.server.config.dir}" overwrite="true">
-       <fileset dir="${jbpm.home}/install/src/jboss/config.common" />
+       <fileset dir="${jbpm.home}/install/src/jboss/config" />
     </copy>
 
     <!-- copy the right hibernate configuration file -->
@@ -295,14 +295,10 @@
       <fileset dir="${jbpm.home}/lib">
         <include name="gwt-console-server-integration.jar" />
         <include name="gwt-console-rpc.jar" />
+        <include name="jbpm-jboss.jar" />
       </fileset>
     </copy>
     
-    <!-- Copy Signavio war into /webapps
-    commented cause it doesn't seem to run on jdk 5
-    <antcall target="install.signavio.into.jboss" />
-    -->
-
     <copy todir="${jboss.server.config.dir}/deploy/jbpm" overwrite="true">
       <fileset dir="${jbpm.home}/lib">
         <include name="gwt-console-jbpm.war" />
@@ -332,29 +328,6 @@
     <unzip src="${jbpm.home}/lib/report-engine.zip" dest="${birt.dir}"/>
     <unzip src="${jbpm.home}/lib/jbpm-console-reports.jar" dest="${birt.dir}"/>
 
-    <!-- copy static configuration files -->
-    <copy todir="${jboss.server.config.dir}" overwrite="true">
-       <fileset dir="${jbpm.home}/install/src/jboss/config.jboss5" />
-    </copy>
-
-    <copy todir="${jboss.server.config.dir}/deploy/jbpm/jbpm-service.sar" overwrite="true">
-      <fileset dir="${jbpm.home}/lib">
-        <include name="jbpm-spi.jar"/>
-      </fileset>
-    </copy>
-
-    <copy todir="${jboss.server.config.dir}/deployers/jbpm.deployer" overwrite="true">
-      <fileset dir="${jbpm.home}/lib">
-        <include name="jbpm-jboss5.jar"/>
-      </fileset>
-    </copy>
-
-    <copy todir="${jboss.server.config.dir}/deployers/jbpm.deployer" overwrite="true">
-      <fileset dir="${jbpm.home}/lib">
-        <include name="jbpm-spi.jar"/>
-      </fileset>
-    </copy>
-
     <property name="container.lib.dir" value="${jboss.server.config.dir}/deploy/jbpm/jbpm-service.sar" />
     <antcall target="internal.copy.database.driver" />
   </target>

Modified: jbpm4/trunk/modules/distro/src/main/files/install/src/cfg/jbpm/jta.testsuite.jbpm.cfg.xml
===================================================================
--- jbpm4/trunk/modules/distro/src/main/files/install/src/cfg/jbpm/jta.testsuite.jbpm.cfg.xml	2009-10-09 14:58:08 UTC (rev 5725)
+++ jbpm4/trunk/modules/distro/src/main/files/install/src/cfg/jbpm/jta.testsuite.jbpm.cfg.xml	2009-10-09 15:29:24 UTC (rev 5726)
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<jbpm-configuration>
+<jbpm-configuration jndi-name="java:/ProcessEngine">
 
   <import resource="jbpm.default.cfg.xml" />
   <import resource="jbpm.tx.jta.cfg.xml" />

Copied: jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config (from rev 5725, jbpm4/branches/tbaeyens/modules/distro/src/main/files/install/src/jboss/config)

Copied: jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy (from rev 5725, jbpm4/branches/tbaeyens/modules/distro/src/main/files/install/src/jboss/config/deploy)

Copied: jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm (from rev 5725, jbpm4/branches/tbaeyens/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm)

Deleted: jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-destinations-service.xml
===================================================================
--- jbpm4/branches/tbaeyens/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-destinations-service.xml	2009-10-09 14:58:08 UTC (rev 5725)
+++ jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-destinations-service.xml	2009-10-09 15:29:24 UTC (rev 5726)
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-  This file defines the default queue that jBPM ships with. You can add other
-  destinations to this file, or you can create other *-service.xml files to
-  contain your application's destinations.
--->
-<server>
-
-  <!--
-    The default command queue. This destination is used by the
-    JmsMessageSession.
-  -->
-  <mbean code="org.jboss.jms.server.destination.QueueService"
-    name="jboss.messaging.destination:service=Queue,name=JbpmCommandQueue"
-    xmbean-dd="xmdesc/Queue-xmbean.xml">
-    <depends optional-attribute-name="ServerPeer">
-      jboss.messaging:service=ServerPeer
-    </depends>
-    <depends>jboss.messaging:service=PostOffice</depends>
-  </mbean>
-
-</server>
\ No newline at end of file

Copied: jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-destinations-service.xml (from rev 5725, jbpm4/branches/tbaeyens/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-destinations-service.xml)
===================================================================
--- jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-destinations-service.xml	                        (rev 0)
+++ jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-destinations-service.xml	2009-10-09 15:29:24 UTC (rev 5726)
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+  This file defines the default queue that jBPM ships with. You can add other
+  destinations to this file, or you can create other *-service.xml files to
+  contain your application's destinations.
+-->
+<server>
+
+  <!--
+    The default command queue. This destination is used by the
+    JmsMessageSession.
+  -->
+  <mbean code="org.jboss.jms.server.destination.QueueService"
+    name="jboss.messaging.destination:service=Queue,name=JbpmCommandQueue"
+    xmbean-dd="xmdesc/Queue-xmbean.xml">
+    <depends optional-attribute-name="ServerPeer">
+      jboss.messaging:service=ServerPeer
+    </depends>
+    <depends>jboss.messaging:service=PostOffice</depends>
+  </mbean>
+
+</server>
\ No newline at end of file

Copied: jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-enterprise.jar (from rev 5725, jbpm4/branches/tbaeyens/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-enterprise.jar)

Copied: jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-enterprise.jar/META-INF (from rev 5725, jbpm4/branches/tbaeyens/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-enterprise.jar/META-INF)

Deleted: jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-enterprise.jar/META-INF/ejb-jar.xml
===================================================================
--- jbpm4/branches/tbaeyens/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-enterprise.jar/META-INF/ejb-jar.xml	2009-10-09 14:58:08 UTC (rev 5725)
+++ jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-enterprise.jar/META-INF/ejb-jar.xml	2009-10-09 15:29:24 UTC (rev 5726)
@@ -1,183 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<ejb-jar version="2.1"
-  xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
-  http://java.sun.com/xml/ns/j2ee/ejb-jar_2_1.xsd"
-  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/j2ee">
-
-  <description>JBoss jBPM enterprise beans</description>
-  <display-name>JBoss jBPM enterprise beans</display-name>
-
-  <enterprise-beans>
-
-    <session>
-      <description>Executes commands in a separate context.</description>
-      <display-name>jBPM Command Executor</display-name>
-      <ejb-name>CommandExecutor</ejb-name>
-      <home>org.jbpm.enterprise.internal.ejb.RemoteCommandExecutorHome</home>
-      <remote>org.jbpm.enterprise.internal.ejb.RemoteCommandExecutor</remote>
-      <local-home>org.jbpm.enterprise.internal.ejb.LocalCommandExecutorHome</local-home>
-      <local>org.jbpm.enterprise.internal.ejb.LocalCommandExecutor</local>
-      <ejb-class>org.jbpm.enterprise.internal.ejb.CommandExecutorSLSB</ejb-class>
-      <session-type>Stateless</session-type>
-      <transaction-type>Bean</transaction-type>
-
-      <ejb-local-ref>
-        <description>
-          Link to the local entity bean that implements the timer session.
-          Required for that contain timers.
-        </description>
-        <ejb-ref-name>ejb/LocalTimer</ejb-ref-name>
-        <ejb-ref-type>Entity</ejb-ref-type>
-        <local-home>org.jbpm.enterprise.internal.ejb.LocalTimerHome</local-home>
-        <local>org.jbpm.enterprise.internal.ejb.LocalTimer</local>
-        <ejb-link>Timer</ejb-link>
-      </ejb-local-ref>
-
-      <resource-ref>
-        <description>
-          Logical name of the data source that provides connections to the database session.
-          Must match the hibernate.connection.datasource property.
-        </description>
-        <res-ref-name>jdbc/JbpmDataSource</res-ref-name>
-        <res-type>javax.sql.DataSource</res-type>
-        <res-auth>Container</res-auth>
-      </resource-ref>
-
-      <resource-ref>
-        <description>
-          Logical name of the factory that provides JMS connections to the message session.
-          Required for processes that contain asynchronous continuations.
-        </description>
-        <res-ref-name>jms/JbpmConnectionFactory</res-ref-name>
-        <res-type>javax.jms.ConnnectionFactory</res-type>
-        <res-auth>Container</res-auth>
-      </resource-ref>
-
-      <message-destination-ref>
-        <description>
-          The command listener bean receives messages from the queue referenced here. To ensure this
-          is the same queue to which command messages can be sent, the message-destination-link
-          element points to a common logical destination, CommandQueue.
-        </description>
-        <message-destination-ref-name>jms/CommandQueue</message-destination-ref-name>
-        <message-destination-type>javax.jms.Queue</message-destination-type>
-        <message-destination-usage>Produces</message-destination-usage>
-        <message-destination-link>CommandQueue</message-destination-link>
-      </message-destination-ref>
-    </session>
-
-    <message-driven>
-      <description>
-        Listens for serialized commands and routes them to the command executor.
-      </description>
-      <display-name>jBPM Command Receiver</display-name>
-      <ejb-name>CommandReceiver</ejb-name>
-      <ejb-class>org.jbpm.enterprise.internal.ejb.CommandReceiverMDB</ejb-class>
-      <transaction-type>Container</transaction-type>
-      <message-destination-type>javax.jms.Queue</message-destination-type>
-      <message-destination-link>CommandQueue</message-destination-link>
-
-      <ejb-local-ref>
-        <description>
-          Link to the local session bean that executes commands on a separate environment.
-        </description>
-        <ejb-ref-name>ejb/LocalCommandExecutor</ejb-ref-name>
-        <ejb-ref-type>Session</ejb-ref-type>
-        <local-home>org.jbpm.enterprise.internal.ejb.LocalCommandExecutorHome</local-home>
-        <local>org.jbpm.enterprise.internal.ejb.LocalCommandExecutor</local>
-        <ejb-link>CommandExecutor</ejb-link>
-      </ejb-local-ref>
-
-      <resource-ref>
-        <description>
-          Logical name of the factory that provides JMS connections for producing result messages.
-          Required for command messages that indicate a reply destination.
-        </description>
-        <res-ref-name>jms/JbpmConnectionFactory</res-ref-name>
-        <res-type>javax.jms.ConnectionFactory</res-type>
-        <res-auth>Container</res-auth>
-        <res-sharing-scope>Shareable</res-sharing-scope>
-      </resource-ref>
-
-      <message-destination-ref>
-        <description>
-          Messages that do not contain a command are sent to the queue referenced here.
-          If absent, said messages are rejected, which may cause the container to redeliver.
-        </description>
-        <message-destination-ref-name>jms/DeadLetterQueue</message-destination-ref-name>
-        <message-destination-type>javax.jms.Queue</message-destination-type>
-        <message-destination-usage>Produces</message-destination-usage>
-      </message-destination-ref>
-    </message-driven>
-
-    <entity>
-      <description>Interacts with the EJB timer service to schedule jBPM timers.</description>
-      <display-name>jBPM Timer</display-name>
-      <ejb-name>Timer</ejb-name>
-      <local-home>org.jbpm.enterprise.internal.ejb.LocalTimerHome</local-home>
-      <local>org.jbpm.enterprise.internal.ejb.LocalTimer</local>
-      <ejb-class>org.jbpm.enterprise.internal.ejb.TimerEB</ejb-class>
-      <persistence-type>Container</persistence-type>
-      <prim-key-class>java.lang.Long</prim-key-class>
-      <reentrant>false</reentrant>
-      <cmp-version>2.x</cmp-version>
-      <abstract-schema-name>pvm</abstract-schema-name>
-      <cmp-field>
-        <field-name>dbid</field-name>
-      </cmp-field>
-      <cmp-field>
-        <field-name>dueDate</field-name>
-      </cmp-field>
-      <!--
-      <cmp-field>
-        <field-name>dbversion</field-name>
-      </cmp-field>
-      -->
-      <primkey-field>dbid</primkey-field>
-
-      <ejb-local-ref>
-        <description>Link to the session bean that executes timers on a separate environment.</description>
-        <ejb-ref-name>ejb/LocalCommandExecutor</ejb-ref-name>
-        <ejb-ref-type>Session</ejb-ref-type>
-        <local-home>org.jbpm.enterprise.internal.ejb.LocalCommandExecutorHome</local-home>
-        <local>org.jbpm.enterprise.internal.ejb.LocalCommandExecutor</local>
-        <ejb-link>CommandExecutor</ejb-link>
-      </ejb-local-ref>
-    </entity>
-
-  </enterprise-beans>
-
-  <assembly-descriptor>
-
-    <!--  container-transaction>
-      <method>
-        <ejb-name>CommandExecutor</ejb-name>
-        <method-name>*</method-name>
-      </method>
-      <trans-attribute>Required</trans-attribute>
-    </container-transaction -->
-
-    <container-transaction>
-      <method>
-        <ejb-name>CommandReceiver</ejb-name>
-        <method-name>*</method-name>
-      </method>
-      <trans-attribute>Required</trans-attribute>
-    </container-transaction>
-
-    <container-transaction>
-      <method>
-        <ejb-name>Timer</ejb-name>
-        <method-name>*</method-name>
-      </method>
-      <trans-attribute>Required</trans-attribute>
-    </container-transaction>
-
-    <message-destination>
-    	<message-destination-name>CommandQueue</message-destination-name>
-    </message-destination>
-
-  </assembly-descriptor>
-
-</ejb-jar>

Copied: jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-enterprise.jar/META-INF/ejb-jar.xml (from rev 5725, jbpm4/branches/tbaeyens/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-enterprise.jar/META-INF/ejb-jar.xml)
===================================================================
--- jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-enterprise.jar/META-INF/ejb-jar.xml	                        (rev 0)
+++ jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-enterprise.jar/META-INF/ejb-jar.xml	2009-10-09 15:29:24 UTC (rev 5726)
@@ -0,0 +1,183 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<ejb-jar version="2.1"
+  xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
+  http://java.sun.com/xml/ns/j2ee/ejb-jar_2_1.xsd"
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/j2ee">
+
+  <description>JBoss jBPM enterprise beans</description>
+  <display-name>JBoss jBPM enterprise beans</display-name>
+
+  <enterprise-beans>
+
+    <session>
+      <description>Executes commands in a separate context.</description>
+      <display-name>jBPM Command Executor</display-name>
+      <ejb-name>CommandExecutor</ejb-name>
+      <home>org.jbpm.enterprise.internal.ejb.RemoteCommandExecutorHome</home>
+      <remote>org.jbpm.enterprise.internal.ejb.RemoteCommandExecutor</remote>
+      <local-home>org.jbpm.enterprise.internal.ejb.LocalCommandExecutorHome</local-home>
+      <local>org.jbpm.enterprise.internal.ejb.LocalCommandExecutor</local>
+      <ejb-class>org.jbpm.enterprise.internal.ejb.CommandExecutorSLSB</ejb-class>
+      <session-type>Stateless</session-type>
+      <transaction-type>Bean</transaction-type>
+
+      <ejb-local-ref>
+        <description>
+          Link to the local entity bean that implements the timer session.
+          Required for that contain timers.
+        </description>
+        <ejb-ref-name>ejb/LocalTimer</ejb-ref-name>
+        <ejb-ref-type>Entity</ejb-ref-type>
+        <local-home>org.jbpm.enterprise.internal.ejb.LocalTimerHome</local-home>
+        <local>org.jbpm.enterprise.internal.ejb.LocalTimer</local>
+        <ejb-link>Timer</ejb-link>
+      </ejb-local-ref>
+
+      <resource-ref>
+        <description>
+          Logical name of the data source that provides connections to the database session.
+          Must match the hibernate.connection.datasource property.
+        </description>
+        <res-ref-name>jdbc/JbpmDataSource</res-ref-name>
+        <res-type>javax.sql.DataSource</res-type>
+        <res-auth>Container</res-auth>
+      </resource-ref>
+
+      <resource-ref>
+        <description>
+          Logical name of the factory that provides JMS connections to the message session.
+          Required for processes that contain asynchronous continuations.
+        </description>
+        <res-ref-name>jms/JbpmConnectionFactory</res-ref-name>
+        <res-type>javax.jms.ConnnectionFactory</res-type>
+        <res-auth>Container</res-auth>
+      </resource-ref>
+
+      <message-destination-ref>
+        <description>
+          The command listener bean receives messages from the queue referenced here. To ensure this
+          is the same queue to which command messages can be sent, the message-destination-link
+          element points to a common logical destination, CommandQueue.
+        </description>
+        <message-destination-ref-name>jms/CommandQueue</message-destination-ref-name>
+        <message-destination-type>javax.jms.Queue</message-destination-type>
+        <message-destination-usage>Produces</message-destination-usage>
+        <message-destination-link>CommandQueue</message-destination-link>
+      </message-destination-ref>
+    </session>
+
+    <message-driven>
+      <description>
+        Listens for serialized commands and routes them to the command executor.
+      </description>
+      <display-name>jBPM Command Receiver</display-name>
+      <ejb-name>CommandReceiver</ejb-name>
+      <ejb-class>org.jbpm.enterprise.internal.ejb.CommandReceiverMDB</ejb-class>
+      <transaction-type>Container</transaction-type>
+      <message-destination-type>javax.jms.Queue</message-destination-type>
+      <message-destination-link>CommandQueue</message-destination-link>
+
+      <ejb-local-ref>
+        <description>
+          Link to the local session bean that executes commands on a separate environment.
+        </description>
+        <ejb-ref-name>ejb/LocalCommandExecutor</ejb-ref-name>
+        <ejb-ref-type>Session</ejb-ref-type>
+        <local-home>org.jbpm.enterprise.internal.ejb.LocalCommandExecutorHome</local-home>
+        <local>org.jbpm.enterprise.internal.ejb.LocalCommandExecutor</local>
+        <ejb-link>CommandExecutor</ejb-link>
+      </ejb-local-ref>
+
+      <resource-ref>
+        <description>
+          Logical name of the factory that provides JMS connections for producing result messages.
+          Required for command messages that indicate a reply destination.
+        </description>
+        <res-ref-name>jms/JbpmConnectionFactory</res-ref-name>
+        <res-type>javax.jms.ConnectionFactory</res-type>
+        <res-auth>Container</res-auth>
+        <res-sharing-scope>Shareable</res-sharing-scope>
+      </resource-ref>
+
+      <message-destination-ref>
+        <description>
+          Messages that do not contain a command are sent to the queue referenced here.
+          If absent, said messages are rejected, which may cause the container to redeliver.
+        </description>
+        <message-destination-ref-name>jms/DeadLetterQueue</message-destination-ref-name>
+        <message-destination-type>javax.jms.Queue</message-destination-type>
+        <message-destination-usage>Produces</message-destination-usage>
+      </message-destination-ref>
+    </message-driven>
+
+    <entity>
+      <description>Interacts with the EJB timer service to schedule jBPM timers.</description>
+      <display-name>jBPM Timer</display-name>
+      <ejb-name>Timer</ejb-name>
+      <local-home>org.jbpm.enterprise.internal.ejb.LocalTimerHome</local-home>
+      <local>org.jbpm.enterprise.internal.ejb.LocalTimer</local>
+      <ejb-class>org.jbpm.enterprise.internal.ejb.TimerEB</ejb-class>
+      <persistence-type>Container</persistence-type>
+      <prim-key-class>java.lang.Long</prim-key-class>
+      <reentrant>false</reentrant>
+      <cmp-version>2.x</cmp-version>
+      <abstract-schema-name>pvm</abstract-schema-name>
+      <cmp-field>
+        <field-name>dbid</field-name>
+      </cmp-field>
+      <cmp-field>
+        <field-name>dueDate</field-name>
+      </cmp-field>
+      <!--
+      <cmp-field>
+        <field-name>dbversion</field-name>
+      </cmp-field>
+      -->
+      <primkey-field>dbid</primkey-field>
+
+      <ejb-local-ref>
+        <description>Link to the session bean that executes timers on a separate environment.</description>
+        <ejb-ref-name>ejb/LocalCommandExecutor</ejb-ref-name>
+        <ejb-ref-type>Session</ejb-ref-type>
+        <local-home>org.jbpm.enterprise.internal.ejb.LocalCommandExecutorHome</local-home>
+        <local>org.jbpm.enterprise.internal.ejb.LocalCommandExecutor</local>
+        <ejb-link>CommandExecutor</ejb-link>
+      </ejb-local-ref>
+    </entity>
+
+  </enterprise-beans>
+
+  <assembly-descriptor>
+
+    <!--  container-transaction>
+      <method>
+        <ejb-name>CommandExecutor</ejb-name>
+        <method-name>*</method-name>
+      </method>
+      <trans-attribute>Required</trans-attribute>
+    </container-transaction -->
+
+    <container-transaction>
+      <method>
+        <ejb-name>CommandReceiver</ejb-name>
+        <method-name>*</method-name>
+      </method>
+      <trans-attribute>Required</trans-attribute>
+    </container-transaction>
+
+    <container-transaction>
+      <method>
+        <ejb-name>Timer</ejb-name>
+        <method-name>*</method-name>
+      </method>
+      <trans-attribute>Required</trans-attribute>
+    </container-transaction>
+
+    <message-destination>
+    	<message-destination-name>CommandQueue</message-destination-name>
+    </message-destination>
+
+  </assembly-descriptor>
+
+</ejb-jar>

Deleted: jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-enterprise.jar/META-INF/jboss.xml
===================================================================
--- jbpm4/branches/tbaeyens/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-enterprise.jar/META-INF/jboss.xml	2009-10-09 14:58:08 UTC (rev 5725)
+++ jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-enterprise.jar/META-INF/jboss.xml	2009-10-09 15:29:24 UTC (rev 5726)
@@ -1,51 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE jboss PUBLIC "-//JBoss//DTD JBOSS 4.0//EN"
-  "http://www.jboss.org/j2ee/dtd/jboss_4_0.dtd">
-
-<jboss>
-
-  <enterprise-beans>
-
-    <session>
-      <ejb-name>CommandExecutor</ejb-name>
-      <jndi-name>jbpm/CommandExecutor</jndi-name>
-      <local-jndi-name>java:jbpm/CommandExecutor</local-jndi-name>
-      <resource-ref>
-        <res-ref-name>jdbc/JbpmDataSource</res-ref-name>
-        <jndi-name>java:JbpmDS</jndi-name>
-      </resource-ref>
-      <resource-ref>
-        <res-ref-name>jms/JbpmConnectionFactory</res-ref-name>
-        <jndi-name>java:JmsXA</jndi-name>
-      </resource-ref>
-    </session>
-
-    <message-driven>
-      <ejb-name>CommandReceiver</ejb-name>
-      <resource-ref>
-        <res-ref-name>jms/JbpmConnectionFactory</res-ref-name>
-        <jndi-name>java:JmsXA</jndi-name>
-      </resource-ref>
-      <message-destination-ref>
-        <message-destination-ref-name>jms/DeadLetterQueue</message-destination-ref-name>
-        <jndi-name>queue/DLQ</jndi-name>
-      </message-destination-ref>
-    </message-driven>
-
-    <entity>
-      <ejb-name>Timer</ejb-name>
-      <local-jndi-name>java:jbpm/Timer</local-jndi-name>
-    </entity>
-
-  </enterprise-beans>
-
-  <assembly-descriptor>
-
-    <message-destination>
-      <message-destination-name>CommandQueue</message-destination-name>
-      <jndi-name>queue/JbpmCommandQueue</jndi-name>
-    </message-destination>
-
-  </assembly-descriptor>
-
-</jboss>

Copied: jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-enterprise.jar/META-INF/jboss.xml (from rev 5725, jbpm4/branches/tbaeyens/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-enterprise.jar/META-INF/jboss.xml)
===================================================================
--- jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-enterprise.jar/META-INF/jboss.xml	                        (rev 0)
+++ jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-enterprise.jar/META-INF/jboss.xml	2009-10-09 15:29:24 UTC (rev 5726)
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE jboss PUBLIC "-//JBoss//DTD JBOSS 4.0//EN"
+  "http://www.jboss.org/j2ee/dtd/jboss_4_0.dtd">
+
+<jboss>
+
+  <enterprise-beans>
+
+    <session>
+      <ejb-name>CommandExecutor</ejb-name>
+      <jndi-name>jbpm/CommandExecutor</jndi-name>
+      <local-jndi-name>java:jbpm/CommandExecutor</local-jndi-name>
+      <resource-ref>
+        <res-ref-name>jdbc/JbpmDataSource</res-ref-name>
+        <jndi-name>java:JbpmDS</jndi-name>
+      </resource-ref>
+      <resource-ref>
+        <res-ref-name>jms/JbpmConnectionFactory</res-ref-name>
+        <jndi-name>java:JmsXA</jndi-name>
+      </resource-ref>
+    </session>
+
+    <message-driven>
+      <ejb-name>CommandReceiver</ejb-name>
+      <resource-ref>
+        <res-ref-name>jms/JbpmConnectionFactory</res-ref-name>
+        <jndi-name>java:JmsXA</jndi-name>
+      </resource-ref>
+      <message-destination-ref>
+        <message-destination-ref-name>jms/DeadLetterQueue</message-destination-ref-name>
+        <jndi-name>queue/DLQ</jndi-name>
+      </message-destination-ref>
+    </message-driven>
+
+    <entity>
+      <ejb-name>Timer</ejb-name>
+      <local-jndi-name>java:jbpm/Timer</local-jndi-name>
+    </entity>
+
+  </enterprise-beans>
+
+  <assembly-descriptor>
+
+    <message-destination>
+      <message-destination-name>CommandQueue</message-destination-name>
+      <jndi-name>queue/JbpmCommandQueue</jndi-name>
+    </message-destination>
+
+  </assembly-descriptor>
+
+</jboss>

Deleted: jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-enterprise.jar/META-INF/jbosscmp-jdbc.xml
===================================================================
--- jbpm4/branches/tbaeyens/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-enterprise.jar/META-INF/jbosscmp-jdbc.xml	2009-10-09 14:58:08 UTC (rev 5725)
+++ jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-enterprise.jar/META-INF/jbosscmp-jdbc.xml	2009-10-09 15:29:24 UTC (rev 5726)
@@ -1,33 +0,0 @@
-<!DOCTYPE jbosscmp-jdbc PUBLIC "-//JBoss//DTD JBOSSCMP-JDBC 4.0//EN"
-  "http://www.jboss.org/j2ee/dtd/jbosscmp-jdbc_4_0.dtd">
-
-<jbosscmp-jdbc>
-  <defaults>
-    <datasource>java:/JbpmDS</datasource>
-    <create-table>false</create-table>
-    <remove-table>false</remove-table>
-    <pk-constraint>false</pk-constraint>
-  </defaults>
-  <enterprise-beans>
-    <entity>
-      <ejb-name>Timer</ejb-name>
-      <table-name>JBPM4_JOB</table-name>
-      <cmp-field>
-        <field-name>dbid</field-name>
-        <column-name>DBID_</column-name>
-        <auto-increment/>
-      </cmp-field>
-      <cmp-field>
-        <field-name>dueDate</field-name>
-        <column-name>DUEDATE_</column-name>
-      </cmp-field>
-      <!--
-      <optimistic-locking>
-        <version-column />
-        <field-name>dbversion</field-name>
-        <column-name>DBVERSION_</column-name>
-      </optimistic-locking>
-      -->
-    </entity>
-  </enterprise-beans>
-</jbosscmp-jdbc>
\ No newline at end of file

Copied: jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-enterprise.jar/META-INF/jbosscmp-jdbc.xml (from rev 5725, jbpm4/branches/tbaeyens/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-enterprise.jar/META-INF/jbosscmp-jdbc.xml)
===================================================================
--- jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-enterprise.jar/META-INF/jbosscmp-jdbc.xml	                        (rev 0)
+++ jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-enterprise.jar/META-INF/jbosscmp-jdbc.xml	2009-10-09 15:29:24 UTC (rev 5726)
@@ -0,0 +1,33 @@
+<!DOCTYPE jbosscmp-jdbc PUBLIC "-//JBoss//DTD JBOSSCMP-JDBC 4.0//EN"
+  "http://www.jboss.org/j2ee/dtd/jbosscmp-jdbc_4_0.dtd">
+
+<jbosscmp-jdbc>
+  <defaults>
+    <datasource>java:/JbpmDS</datasource>
+    <create-table>false</create-table>
+    <remove-table>false</remove-table>
+    <pk-constraint>false</pk-constraint>
+  </defaults>
+  <enterprise-beans>
+    <entity>
+      <ejb-name>Timer</ejb-name>
+      <table-name>JBPM4_JOB</table-name>
+      <cmp-field>
+        <field-name>dbid</field-name>
+        <column-name>DBID_</column-name>
+        <auto-increment/>
+      </cmp-field>
+      <cmp-field>
+        <field-name>dueDate</field-name>
+        <column-name>DUEDATE_</column-name>
+      </cmp-field>
+      <!--
+      <optimistic-locking>
+        <version-column />
+        <field-name>dbversion</field-name>
+        <column-name>DBVERSION_</column-name>
+      </optimistic-locking>
+      -->
+    </entity>
+  </enterprise-beans>
+</jbosscmp-jdbc>
\ No newline at end of file

Copied: jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar (from rev 5725, jbpm4/branches/tbaeyens/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar)

Copied: jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/META-INF (from rev 5725, jbpm4/branches/tbaeyens/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/META-INF)

Deleted: jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/META-INF/jboss-service.xml
===================================================================
--- jbpm4/branches/tbaeyens/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/META-INF/jboss-service.xml	2009-10-09 14:58:08 UTC (rev 5725)
+++ jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/META-INF/jboss-service.xml	2009-10-09 15:29:24 UTC (rev 5726)
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<server>
-  <!-- The custom JAAS login configuration that installs
-      a Configuration capable of dynamically updating the
-      config settings
-  -->
-  <mbean code="org.jboss.security.auth.login.DynamicLoginConfig" name="org.jbpm:service=LoginConfig">
-    <attribute name="PolicyConfig" serialDataType="jbxb">
-      <jaas:policy xsi:schemaLocation="urn:jboss:security-config:4.1 resource:security-config_4_1.xsd" xmlns:jaas="urn:jboss:security-config:4.1"
-                   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-        <jaas:application-policy name="jbpm-console">
-          <jaas:authentication>
-            <!-- Authenticate against the Identiy database -->
-            <jaas:login-module code="org.jboss.security.auth.spi.DatabaseServerLoginModule" flag="required">
-              <jaas:module-option name="dsJndiName">java:/JbpmDS</jaas:module-option>
-              <jaas:module-option name="principalsQuery"> SELECT PASSWORD_ FROM JBPM4_ID_USER WHERE ID_=? </jaas:module-option>
-              <jaas:module-option name="rolesQuery">
-                SELECT g.NAME_ ,'Roles' FROM JBPM4_ID_USER u, JBPM4_ID_MEMBERSHIP m, JBPM4_ID_GROUP g
-                WHERE g.TYPE_='security-role' AND m.GROUP_ = g.DBID_ AND m.USER_ = u.DBID_ AND u.ID_=? </jaas:module-option>
-            </jaas:login-module>
-          </jaas:authentication>
-        </jaas:application-policy>
-      </jaas:policy>
-    </attribute>
-    <depends optional-attribute-name="LoginConfigService"> jboss.security:service=XMLLoginConfig</depends>
-    <depends optional-attribute-name="SecurityManagerService"> jboss.security:service=JaasSecurityManager</depends>
-  </mbean>
-</server>

Copied: jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/META-INF/jboss-service.xml (from rev 5725, jbpm4/branches/tbaeyens/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/META-INF/jboss-service.xml)
===================================================================
--- jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/META-INF/jboss-service.xml	                        (rev 0)
+++ jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/META-INF/jboss-service.xml	2009-10-09 15:29:24 UTC (rev 5726)
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<server>
+  <!-- The custom JAAS login configuration that installs
+      a Configuration capable of dynamically updating the
+      config settings
+  -->
+  <mbean code="org.jboss.security.auth.login.DynamicLoginConfig" name="org.jbpm:service=LoginConfig">
+    <attribute name="PolicyConfig" serialDataType="jbxb">
+      <jaas:policy xsi:schemaLocation="urn:jboss:security-config:4.1 resource:security-config_4_1.xsd" xmlns:jaas="urn:jboss:security-config:4.1"
+                   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+        <jaas:application-policy name="jbpm-console">
+          <jaas:authentication>
+            <!-- Authenticate against the Identiy database -->
+            <jaas:login-module code="org.jboss.security.auth.spi.DatabaseServerLoginModule" flag="required">
+              <jaas:module-option name="dsJndiName">java:/JbpmDS</jaas:module-option>
+              <jaas:module-option name="principalsQuery"> SELECT PASSWORD_ FROM JBPM4_ID_USER WHERE ID_=? </jaas:module-option>
+              <jaas:module-option name="rolesQuery">
+                SELECT g.NAME_ ,'Roles' FROM JBPM4_ID_USER u, JBPM4_ID_MEMBERSHIP m, JBPM4_ID_GROUP g
+                WHERE g.TYPE_='security-role' AND m.GROUP_ = g.DBID_ AND m.USER_ = u.DBID_ AND u.ID_=? </jaas:module-option>
+            </jaas:login-module>
+          </jaas:authentication>
+        </jaas:application-policy>
+      </jaas:policy>
+    </attribute>
+    <depends optional-attribute-name="LoginConfigService"> jboss.security:service=XMLLoginConfig</depends>
+    <depends optional-attribute-name="SecurityManagerService"> jboss.security:service=JaasSecurityManager</depends>
+  </mbean>
+</server>

Deleted: jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/jbpm-service-jboss-beans.xml
===================================================================
--- jbpm4/branches/tbaeyens/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/jbpm-service-jboss-beans.xml	2009-10-09 14:58:08 UTC (rev 5725)
+++ jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/jbpm-service-jboss-beans.xml	2009-10-09 15:29:24 UTC (rev 5726)
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
-
-  <!--
-     JBPM Service
-  -->
-  <bean name="org.jbpm:service=ProcessEngine"
-        class="org.jbpm.jboss.internal.JbpmService">
-    <property name="dataSource">
-      <inject bean="jboss.jca:name=JbpmDS,service=DataSourceBinding" />
-    </property>
-  </bean>
-
-</deployment>
\ No newline at end of file

Copied: jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/jbpm-service-jboss-beans.xml (from rev 5725, jbpm4/branches/tbaeyens/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/jbpm-service-jboss-beans.xml)
===================================================================
--- jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/jbpm-service-jboss-beans.xml	                        (rev 0)
+++ jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/jbpm-service-jboss-beans.xml	2009-10-09 15:29:24 UTC (rev 5726)
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+  <!--
+     JBPM Service
+  -->
+  <bean name="org.jbpm:service=ProcessEngine"
+        class="org.jbpm.jboss.internal.JbpmService">
+    <property name="dataSource">
+      <inject bean="jboss.jca:name=JbpmDS,service=DataSourceBinding" />
+    </property>
+  </bean>
+
+</deployment>
\ No newline at end of file

Deleted: jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/jbpm.cfg.xml
===================================================================
--- jbpm4/branches/tbaeyens/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/jbpm.cfg.xml	2009-10-09 14:58:08 UTC (rev 5725)
+++ jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/jbpm.cfg.xml	2009-10-09 15:29:24 UTC (rev 5726)
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<jbpm-configuration jndi-name="java:/ProcessEngine">
-
-  <import resource="jbpm.default.cfg.xml" />
-  <import resource="jbpm.businesscalendar.cfg.xml" />
-  <import resource="jbpm.tx.jta.cfg.xml" />
-  <import resource="jbpm.jpdl.cfg.xml" />
-  <import resource="jbpm.identity.cfg.xml" />
-  <import resource="jbpm.jobexecutor.cfg.xml" />
-
-  <process-engine-context>
-    <string name="jbpm.console.webservice.host" value="localhost" />
-    <string name="jbpm.console.webservice.port" value="8080" />
-  </process-engine-context>
-
-</jbpm-configuration>

Copied: jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/jbpm.cfg.xml (from rev 5725, jbpm4/branches/tbaeyens/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/jbpm.cfg.xml)
===================================================================
--- jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/jbpm.cfg.xml	                        (rev 0)
+++ jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/jbpm.cfg.xml	2009-10-09 15:29:24 UTC (rev 5726)
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<jbpm-configuration jndi-name="java:/ProcessEngine">
+
+  <import resource="jbpm.default.cfg.xml" />
+  <import resource="jbpm.businesscalendar.cfg.xml" />
+  <import resource="jbpm.tx.jta.cfg.xml" />
+  <import resource="jbpm.jpdl.cfg.xml" />
+  <import resource="jbpm.identity.cfg.xml" />
+  <import resource="jbpm.jobexecutor.cfg.xml" />
+
+  <process-engine-context>
+    <string name="jbpm.console.webservice.host" value="localhost" />
+    <string name="jbpm.console.webservice.port" value="8080" />
+  </process-engine-context>
+
+</jbpm-configuration>

Deleted: jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/jbpm.mail.properties
===================================================================
--- jbpm4/branches/tbaeyens/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/jbpm.mail.properties	2009-10-09 14:58:08 UTC (rev 5725)
+++ jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/jbpm.mail.properties	2009-10-09 15:29:24 UTC (rev 5726)
@@ -1,3 +0,0 @@
-mail.smtp.host=localhost
-mail.smtp.port=25
-mail.from=noreply at jbpm.org

Copied: jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/jbpm.mail.properties (from rev 5725, jbpm4/branches/tbaeyens/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/jbpm.mail.properties)
===================================================================
--- jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/jbpm.mail.properties	                        (rev 0)
+++ jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config/deploy/jbpm/jbpm-service.sar/jbpm.mail.properties	2009-10-09 15:29:24 UTC (rev 5726)
@@ -0,0 +1,3 @@
+mail.smtp.host=localhost
+mail.smtp.port=25
+mail.from=noreply at jbpm.org

Deleted: jbpm4/trunk/modules/integration/.project
===================================================================
--- jbpm4/trunk/modules/integration/.project	2009-10-09 14:58:08 UTC (rev 5725)
+++ jbpm4/trunk/modules/integration/.project	2009-10-09 15:29:24 UTC (rev 5726)
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>jbpm-integration</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.maven.ide.eclipse.maven2Builder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.maven.ide.eclipse.maven2Nature</nature>
-	</natures>
-</projectDescription>

Modified: jbpm4/trunk/modules/integration/form-plugin/pom.xml
===================================================================
--- jbpm4/trunk/modules/integration/form-plugin/pom.xml	2009-10-09 14:58:08 UTC (rev 5725)
+++ jbpm4/trunk/modules/integration/form-plugin/pom.xml	2009-10-09 15:29:24 UTC (rev 5726)
@@ -30,12 +30,6 @@
       <scope>provided</scope>
     </dependency>
     <dependency>
-      <groupId>org.jbpm.jbpm4</groupId>
-      <artifactId>jbpm-spi</artifactId>
-      <scope>provided</scope>
-      <version>${version}</version>
-    </dependency>
-    <dependency>
       <groupId>org.jboss.bpm</groupId>
       <artifactId>gwt-console-server-integration</artifactId>
       <scope>provided</scope>

Modified: jbpm4/trunk/modules/integration/form-plugin/src/main/java/org/jbpm/integration/console/forms/AbstractFormDispatcher.java
===================================================================
--- jbpm4/trunk/modules/integration/form-plugin/src/main/java/org/jbpm/integration/console/forms/AbstractFormDispatcher.java	2009-10-09 14:58:08 UTC (rev 5725)
+++ jbpm4/trunk/modules/integration/form-plugin/src/main/java/org/jbpm/integration/console/forms/AbstractFormDispatcher.java	2009-10-09 15:29:24 UTC (rev 5726)
@@ -21,20 +21,27 @@
  */
 package org.jbpm.integration.console.forms;
 
-import freemarker.template.DefaultObjectWrapper;
-import freemarker.template.Template;
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.io.OutputStream;
+import java.io.OutputStreamWriter;
+import java.io.Writer;
+import java.util.Map;
 
-import org.jbpm.api.Configuration;
-import org.jbpm.api.ProcessEngine;
-import org.jbpm.integration.spi.mgmt.ServerConfig;
-import org.jbpm.integration.spi.mgmt.ServerConfigFactory;
-
 import javax.activation.DataHandler;
 import javax.activation.DataSource;
 import javax.naming.InitialContext;
-import java.io.*;
-import java.util.Map;
 
+import org.jbpm.api.Configuration;
+import org.jbpm.api.JbpmException;
+import org.jbpm.api.ProcessEngine;
+
+import freemarker.template.DefaultObjectWrapper;
+import freemarker.template.Template;
+
 /**
  * Base class for freemarker based form dispatcher implementations that should
  * run on JBoss. Uses {@link org.jbpm.integration.spi.mgmt.ServerConfig} to
@@ -50,9 +57,9 @@
   protected final static String WEB_CONTEXT = "/gwt-console-server/rs";
 
   protected ProcessEngine processEngine;
+  protected String webServiceHost = null;
+  protected String webServicePort = null;
 
-  protected ServerConfig serverConfig = null; // lazy
-  
   protected static final String FORM_DIRECTIVE_KEY = "form";
   
   protected static final String OUTCOME_DIRECTIVE_NAME = "outcome";
@@ -65,24 +72,28 @@
     try {
       InitialContext ctx = new InitialContext();
       this.processEngine = (ProcessEngine) ctx.lookup("java:/ProcessEngine");
+      
     } catch (Exception e) {
       // Fall back to default mechanism
       this.processEngine = Configuration.getProcessEngine();
     }
-  }
-
-  protected ServerConfig getServerConfig() {
-    if (null == serverConfig) {
-      serverConfig = ServerConfigFactory.getServerConfig();
+    
+    this.webServiceHost = (String) processEngine.get("jbpm.console.webservice.host");
+    this.webServicePort = (String) processEngine.get("jbpm.console.webservice.port");
+    
+    if ( (webServiceHost==null)
+         || (webServicePort==null)
+       ) {
+      throw new JbpmException("make sure that strings 'jbpm.console.webservice.host' and 'jbpm.console.webservice.port' are properly configured in the process-engine-context of jbpm.cfg.xml");
     }
-    return serverConfig;
   }
 
   protected StringBuilder getBaseUrl() {
     StringBuilder spec = new StringBuilder();
     spec.append("http://");
-    spec.append(getServerConfig().getWebServiceHost());
-    spec.append(":").append(getServerConfig().getWebServicePort());
+    spec.append(webServiceHost);
+    spec.append(":");
+    spec.append(webServicePort);
     spec.append(WEB_CONTEXT);
     return spec;
   }

Modified: jbpm4/trunk/modules/integration/graphView-plugin/pom.xml
===================================================================
--- jbpm4/trunk/modules/integration/graphView-plugin/pom.xml	2009-10-09 14:58:08 UTC (rev 5725)
+++ jbpm4/trunk/modules/integration/graphView-plugin/pom.xml	2009-10-09 15:29:24 UTC (rev 5726)
@@ -30,12 +30,6 @@
       <scope>provided</scope>
     </dependency>
     <dependency>
-      <groupId>org.jbpm.jbpm4</groupId>
-      <artifactId>jbpm-spi</artifactId>
-      <scope>provided</scope>
-      <version>${version}</version>
-    </dependency>
-    <dependency>
       <groupId>org.jboss.bpm</groupId>
       <artifactId>gwt-console-server-integration</artifactId>
       <scope>provided</scope>

Modified: jbpm4/trunk/modules/integration/graphView-plugin/src/main/java/org/jbpm/integration/console/graphView/GraphViewerPluginImpl.java
===================================================================
--- jbpm4/trunk/modules/integration/graphView-plugin/src/main/java/org/jbpm/integration/console/graphView/GraphViewerPluginImpl.java	2009-10-09 14:58:08 UTC (rev 5725)
+++ jbpm4/trunk/modules/integration/graphView-plugin/src/main/java/org/jbpm/integration/console/graphView/GraphViewerPluginImpl.java	2009-10-09 15:29:24 UTC (rev 5726)
@@ -37,13 +37,12 @@
 import org.jboss.bpm.console.client.model.DiagramNodeInfo;
 import org.jboss.bpm.console.server.plugin.GraphViewerPlugin;
 import org.jbpm.api.Configuration;
+import org.jbpm.api.JbpmException;
 import org.jbpm.api.ProcessDefinition;
 import org.jbpm.api.ProcessEngine;
 import org.jbpm.api.ProcessInstance;
 import org.jbpm.api.RepositoryService;
 import org.jbpm.api.model.ActivityCoordinates;
-import org.jbpm.integration.spi.mgmt.ServerConfig;
-import org.jbpm.integration.spi.mgmt.ServerConfigFactory;
 
 /**
  * @author Heiko.Braun <heiko.braun at jboss.com>
@@ -53,7 +52,8 @@
   protected final static String WEB_CONTEXT = "/gwt-console-server/rs";
 
   protected ProcessEngine processEngine;
-  protected ServerConfig serverConfig = null; // lazy
+  protected String webServiceHost = null;
+  protected String webServicePort = null;
 
   public GraphViewerPluginImpl() {
     initializeProcessEngine();
@@ -63,24 +63,28 @@
     try {
       InitialContext ctx = new InitialContext();
       this.processEngine = (ProcessEngine) ctx.lookup("java:/ProcessEngine");
+      
     } catch (Exception e) {
       // Fall back to default mechanism
       this.processEngine = Configuration.getProcessEngine();
     }
-  }
-
-  protected ServerConfig getServerConfig() {
-    if (null == serverConfig) {
-      serverConfig = ServerConfigFactory.getServerConfig();
+    
+    this.webServiceHost = (String) processEngine.get("jbpm.console.webservice.host");
+    this.webServicePort = (String) processEngine.get("jbpm.console.webservice.port");
+    
+    if ( (webServiceHost==null)
+         || (webServicePort==null)
+       ) {
+      throw new JbpmException("make sure that strings 'jbpm.console.webservice.host' and 'jbpm.console.webservice.port' are properly configured in the process-engine-context of jbpm.cfg.xml");
     }
-    return serverConfig;
   }
 
   protected StringBuilder getBaseUrl() {
     StringBuilder spec = new StringBuilder();
     spec.append("http://");
-    spec.append(getServerConfig().getWebServiceHost());
-    spec.append(":").append(getServerConfig().getWebServicePort());
+    spec.append(webServiceHost);
+    spec.append(":");
+    spec.append(webServicePort);
     spec.append(WEB_CONTEXT);
     return spec;
   }

Modified: jbpm4/trunk/modules/integration/pom.xml
===================================================================
--- jbpm4/trunk/modules/integration/pom.xml	2009-10-09 14:58:08 UTC (rev 5725)
+++ jbpm4/trunk/modules/integration/pom.xml	2009-10-09 15:29:24 UTC (rev 5726)
@@ -117,9 +117,6 @@
   </dependencyManagement>
 
   <modules>
-    <module>spi</module>
-    <module>jboss5</module>
-    <module>jboss4</module>
     <module>console</module>
     <module>form-plugin</module>
     <module>graphView-plugin</module>

Copied: jbpm4/trunk/modules/jboss (from rev 5725, jbpm4/branches/tbaeyens/modules/jboss)

Deleted: jbpm4/trunk/modules/jboss/.classpath
===================================================================
--- jbpm4/branches/tbaeyens/modules/jboss/.classpath	2009-10-09 14:58:08 UTC (rev 5725)
+++ jbpm4/trunk/modules/jboss/.classpath	2009-10-09 15:29:24 UTC (rev 5726)
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" output="target/classes" path="src/main/java"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
-	<classpathentry kind="con" path="org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER"/>
-	<classpathentry kind="output" path="target/classes"/>
-</classpath>

Copied: jbpm4/trunk/modules/jboss/.classpath (from rev 5725, jbpm4/branches/tbaeyens/modules/jboss/.classpath)
===================================================================
--- jbpm4/trunk/modules/jboss/.classpath	                        (rev 0)
+++ jbpm4/trunk/modules/jboss/.classpath	2009-10-09 15:29:24 UTC (rev 5726)
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="src" output="target/classes" path="src/main/java"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+	<classpathentry kind="con" path="org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER"/>
+	<classpathentry kind="output" path="target/classes"/>
+</classpath>

Deleted: jbpm4/trunk/modules/jboss/.project
===================================================================
--- jbpm4/branches/tbaeyens/modules/jboss/.project	2009-10-09 14:58:08 UTC (rev 5725)
+++ jbpm4/trunk/modules/jboss/.project	2009-10-09 15:29:24 UTC (rev 5726)
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>jboss</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-		<nature>org.maven.ide.eclipse.maven2Nature</nature>
-	</natures>
-</projectDescription>

Copied: jbpm4/trunk/modules/jboss/.project (from rev 5725, jbpm4/branches/tbaeyens/modules/jboss/.project)
===================================================================
--- jbpm4/trunk/modules/jboss/.project	                        (rev 0)
+++ jbpm4/trunk/modules/jboss/.project	2009-10-09 15:29:24 UTC (rev 5726)
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>jboss</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+		<nature>org.maven.ide.eclipse.maven2Nature</nature>
+	</natures>
+</projectDescription>

Deleted: jbpm4/trunk/modules/jboss/pom.xml
===================================================================
--- jbpm4/branches/tbaeyens/modules/jboss/pom.xml	2009-10-09 14:58:08 UTC (rev 5725)
+++ jbpm4/trunk/modules/jboss/pom.xml	2009-10-09 15:29:24 UTC (rev 5726)
@@ -1,30 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-  <modelVersion>4.0.0</modelVersion>
-
-  <name>jBPM 4 - JBoss Integration</name>
-  <description>JBoss jBPM - JBoss Integration</description>
-
-  <groupId>org.jbpm.jbpm4</groupId>
-  <artifactId>jbpm-jboss</artifactId>
-  <packaging>jar</packaging>
-
-  <parent>
-    <groupId>org.jbpm.jbpm4</groupId>
-    <artifactId>jbpm</artifactId>
-    <version>4.2-SNAPSHOT</version>
-  </parent>
-
-  <!-- Properties -->
-  <properties>
-  </properties>
-
-  <!-- Dependencies -->
-  <dependencies>
-    <dependency>
-      <groupId>org.jbpm.jbpm4</groupId>
-      <artifactId>jbpm-jpdl</artifactId>      
-    </dependency>
-  </dependencies>
-
-</project>

Copied: jbpm4/trunk/modules/jboss/pom.xml (from rev 5725, jbpm4/branches/tbaeyens/modules/jboss/pom.xml)
===================================================================
--- jbpm4/trunk/modules/jboss/pom.xml	                        (rev 0)
+++ jbpm4/trunk/modules/jboss/pom.xml	2009-10-09 15:29:24 UTC (rev 5726)
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <name>jBPM 4 - JBoss Integration</name>
+  <description>JBoss jBPM - JBoss Integration</description>
+
+  <groupId>org.jbpm.jbpm4</groupId>
+  <artifactId>jbpm-jboss</artifactId>
+  <packaging>jar</packaging>
+
+  <parent>
+    <groupId>org.jbpm.jbpm4</groupId>
+    <artifactId>jbpm</artifactId>
+    <version>4.2-SNAPSHOT</version>
+  </parent>
+
+  <!-- Properties -->
+  <properties>
+  </properties>
+
+  <!-- Dependencies -->
+  <dependencies>
+    <dependency>
+      <groupId>org.jbpm.jbpm4</groupId>
+      <artifactId>jbpm-jpdl</artifactId>      
+    </dependency>
+  </dependencies>
+
+</project>

Copied: jbpm4/trunk/modules/jboss/src (from rev 5725, jbpm4/branches/tbaeyens/modules/jboss/src)

Copied: jbpm4/trunk/modules/jboss/src/main (from rev 5725, jbpm4/branches/tbaeyens/modules/jboss/src/main)

Copied: jbpm4/trunk/modules/jboss/src/main/java (from rev 5725, jbpm4/branches/tbaeyens/modules/jboss/src/main/java)

Copied: jbpm4/trunk/modules/jboss/src/main/java/org (from rev 5725, jbpm4/branches/tbaeyens/modules/jboss/src/main/java/org)

Copied: jbpm4/trunk/modules/jboss/src/main/java/org/jbpm (from rev 5725, jbpm4/branches/tbaeyens/modules/jboss/src/main/java/org/jbpm)

Copied: jbpm4/trunk/modules/jboss/src/main/java/org/jbpm/jboss (from rev 5725, jbpm4/branches/tbaeyens/modules/jboss/src/main/java/org/jbpm/jboss)

Copied: jbpm4/trunk/modules/jboss/src/main/java/org/jbpm/jboss/internal (from rev 5725, jbpm4/branches/tbaeyens/modules/jboss/src/main/java/org/jbpm/jboss/internal)

Deleted: jbpm4/trunk/modules/jboss/src/main/java/org/jbpm/jboss/internal/JbpmService.java
===================================================================
--- jbpm4/branches/tbaeyens/modules/jboss/src/main/java/org/jbpm/jboss/internal/JbpmService.java	2009-10-09 14:58:08 UTC (rev 5725)
+++ jbpm4/trunk/modules/jboss/src/main/java/org/jbpm/jboss/internal/JbpmService.java	2009-10-09 15:29:24 UTC (rev 5726)
@@ -1,54 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2006, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jbpm.jboss.internal;
-
-import org.jbpm.api.Configuration;
-import org.jbpm.api.ProcessEngine;
-import org.jbpm.internal.log.Log;
-
-/**
- * @author Tom Baeyens
- */
-public class JbpmService {
-
-  private static final Log log = Log.getLog(JbpmService.class.getName());
-
-  private ProcessEngine processEngine;
-
-  public void start() {
-    log.debug("JbpmService starting...");
-    this.processEngine = Configuration.getProcessEngine();
-    log.info("JbpmService started");
-  }
-
-  public void stop() {
-    this.processEngine.close();
-    log.info("JbpmService stopped");
-  }
-
-  public ProcessEngine getProcessEngine() {
-    return this.processEngine;
-  }
-
-  public void setDataSource(Object dataSource) {
-  }
-}

Copied: jbpm4/trunk/modules/jboss/src/main/java/org/jbpm/jboss/internal/JbpmService.java (from rev 5725, jbpm4/branches/tbaeyens/modules/jboss/src/main/java/org/jbpm/jboss/internal/JbpmService.java)
===================================================================
--- jbpm4/trunk/modules/jboss/src/main/java/org/jbpm/jboss/internal/JbpmService.java	                        (rev 0)
+++ jbpm4/trunk/modules/jboss/src/main/java/org/jbpm/jboss/internal/JbpmService.java	2009-10-09 15:29:24 UTC (rev 5726)
@@ -0,0 +1,54 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jbpm.jboss.internal;
+
+import org.jbpm.api.Configuration;
+import org.jbpm.api.ProcessEngine;
+import org.jbpm.internal.log.Log;
+
+/**
+ * @author Tom Baeyens
+ */
+public class JbpmService {
+
+  private static final Log log = Log.getLog(JbpmService.class.getName());
+
+  private ProcessEngine processEngine;
+
+  public void start() {
+    log.debug("JbpmService starting...");
+    this.processEngine = Configuration.getProcessEngine();
+    log.info("JbpmService started");
+  }
+
+  public void stop() {
+    this.processEngine.close();
+    log.info("JbpmService stopped");
+  }
+
+  public ProcessEngine getProcessEngine() {
+    return this.processEngine;
+  }
+
+  public void setDataSource(Object dataSource) {
+  }
+}

Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cfg/ProcessEngineImpl.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cfg/ProcessEngineImpl.java	2009-10-09 14:58:08 UTC (rev 5725)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/cfg/ProcessEngineImpl.java	2009-10-09 15:29:24 UTC (rev 5726)
@@ -23,12 +23,16 @@
 
 import java.io.File;
 import java.io.InputStream;
+import java.io.Serializable;
 import java.net.URL;
 import java.sql.Connection;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Set;
 
+import javax.naming.InitialContext;
+import javax.naming.NamingException;
+
 import org.jbpm.api.Configuration;
 import org.jbpm.api.ExecutionService;
 import org.jbpm.api.HistoryService;
@@ -47,6 +51,7 @@
 import org.jbpm.pvm.internal.env.JbpmConfigurationParser;
 import org.jbpm.pvm.internal.env.PvmEnvironment;
 import org.jbpm.pvm.internal.env.UserProvidedEnvironmentObject;
+import org.jbpm.pvm.internal.jobexecutor.JobExecutor;
 import org.jbpm.pvm.internal.stream.FileStreamInput;
 import org.jbpm.pvm.internal.stream.InputStreamInput;
 import org.jbpm.pvm.internal.stream.ResourceStreamInput;
@@ -87,21 +92,22 @@
  * 
  * @author Tom Baeyens
  */
-public class ProcessEngineImpl extends Configuration implements Context, ProcessEngine, EnvironmentFactory {
+public class ProcessEngineImpl extends Configuration implements Context, ProcessEngine, EnvironmentFactory, Serializable {
 
   private static final long serialVersionUID = 1L;
   private static final Log log = Log.getLog(ProcessEngineImpl.class.getName());
   
   public static final String JBPM_LIBRARY_VERSION = "4.2-SNAPSHOT";
 
-  protected boolean isConfigured = false;
-  protected WireContext processEngineWireContext = new WireContext(new WireDefinition(), Context.CONTEXTNAME_PROCESS_ENGINE, true);
-  protected WireDefinition transactionWireDefinition = new WireDefinition();
+  transient protected String jndiName;
+  transient protected boolean isConfigured = false;
+  transient protected WireContext processEngineWireContext = new WireContext(new WireDefinition(), Context.CONTEXTNAME_PROCESS_ENGINE, true);
+  transient protected WireDefinition transactionWireDefinition = new WireDefinition();
   
-  protected ThreadLocal<List<UserProvidedEnvironmentObject>> userProvidedEnvironmentObjectsThreadLocal = new ThreadLocal<List<UserProvidedEnvironmentObject>>();
-  protected ThreadLocal<String> authenticatedUserIdThreadLocal = new ThreadLocal<String>();
+  transient protected ThreadLocal<List<UserProvidedEnvironmentObject>> userProvidedEnvironmentObjectsThreadLocal = new ThreadLocal<List<UserProvidedEnvironmentObject>>();
+  transient protected ThreadLocal<String> authenticatedUserIdThreadLocal = new ThreadLocal<String>();
   
-  protected CommandService userCommandService = null;
+  transient protected CommandService userCommandService = null;
   
   public ProcessEngineImpl() {
     super((Configuration)null);
@@ -111,6 +117,20 @@
     if (!isConfigured) {
       setResource("jbpm.cfg.xml");
     }
+    
+    if (jndiName!=null) {
+      try {
+        InitialContext initialContext = new InitialContext();
+        ProcessEngineImpl existing = (ProcessEngineImpl) initialContext.lookup(jndiName);
+        if (existing!=null) {
+          log.debug("found existing process engine under "+jndiName);
+          return existing;
+        }
+      } catch (NamingException e) {
+        log.debug("jndi name "+jndiName+" is not bound");
+      }
+    }
+    
     if (log.isTraceEnabled()) {
       log.trace("created ProcessEngine "+System.identityHashCode(this));
       if ( (processEngineWireContext!=null)
@@ -133,6 +153,17 @@
     }
     processEngineWireContext.create();
     userCommandService = (CommandService) processEngineWireContext.get(CommandService.NAME_TX_REQUIRED_COMMAND_SERVICE);
+
+    if (jndiName!=null) {
+      try {
+        log.debug("publishing jBPM ProcessEngine in jndi at "+jndiName);
+        InitialContext initialContext = new InitialContext();
+        initialContext.bind(jndiName, this);
+      } catch (NamingException e) {
+        throw new JbpmException("JNDI binding problem", e);
+      }
+    }
+
     return this;
   }
 
@@ -246,6 +277,11 @@
   }
 
   public void close() {
+    JobExecutor jobExecutor = get(JobExecutor.class);
+    if (jobExecutor!=null) {
+      // stop the job executor and wait till all job executor threads have stopped.
+      jobExecutor.stop(true);
+    }
     processEngineWireContext.fire(WireContext.EVENT_CLOSE, null);
   }
 
@@ -326,4 +362,11 @@
   public <T> T execute(Command<T> command) {
     return userCommandService.execute(command);
   }
+  
+  public String getJndiName() {
+    return jndiName;
+  }
+  public void setJndiName(String jndiName) {
+    this.jndiName = jndiName;
+  }
 }

Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/env/JbpmConfigurationParser.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/env/JbpmConfigurationParser.java	2009-10-09 14:58:08 UTC (rev 5725)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/env/JbpmConfigurationParser.java	2009-10-09 15:29:24 UTC (rev 5726)
@@ -57,17 +57,31 @@
     Element documentElement = document.getDocumentElement();
     
     // if the default environment factory was already set in the parse
-    ProcessEngineImpl processEngineImpl = (ProcessEngineImpl) parse.contextStackFind(ProcessEngineImpl.class);
-    if (processEngineImpl==null) {
-      processEngineImpl = new ProcessEngineImpl();
+    ProcessEngineImpl processEngine = (ProcessEngineImpl) parse.contextStackFind(ProcessEngineImpl.class);
+    if (processEngine==null) {
+      processEngine = new ProcessEngineImpl();
     }
     
+    // this code will be called for the original jbpm.cfg.xml document as 
+    // well as for the imported documents.  only one of those should specify
+    // a jndi-name.  for sure no 2 config files can specify different jndi-names
+    String jndiName = XmlUtil.attribute(documentElement, "jndi-name");
+    if (jndiName!=null) {
+      if ( (processEngine.getJndiName()!=null)
+           && (!jndiName.equals(processEngine.getJndiName()))
+         ) {
+        parse.addProblem("duplicate jndi name specification: "+jndiName+" != "+processEngine.getJndiName());
+      } else {
+        processEngine.setJndiName(jndiName);
+      }
+    }
+    
     for (Element importElement : XmlUtil.elements(documentElement, "import")) {
       if (importElement.hasAttribute("resource")) {
         String resource = importElement.getAttribute("resource");
         Parse importParse = createParse()
           .setResource(resource)
-          .contextStackPush(processEngineImpl)
+          .contextStackPush(processEngine)
           .execute();
         
         parse.addProblems(importParse.getProblems());
@@ -76,7 +90,7 @@
 
     Element processEngineElement = XmlUtil.element(documentElement, "process-engine-context");
     if (processEngineElement != null) {
-      WireDefinition processEngineContextDefinition = processEngineImpl.getProcessEngineWireContext().getWireDefinition();
+      WireDefinition processEngineContextDefinition = processEngine.getProcessEngineWireContext().getWireDefinition();
       parse.contextStackPush(processEngineContextDefinition);
       try {
         processEngineContextParser.parseDocumentElement(processEngineElement, parse);
@@ -87,7 +101,7 @@
 
     Element txCtxElement = XmlUtil.element(documentElement, "transaction-context");
     if (txCtxElement != null) {
-      WireDefinition transactionContextDefinition = processEngineImpl.getTransactionWireDefinition();
+      WireDefinition transactionContextDefinition = processEngine.getTransactionWireDefinition();
       parse.contextStackPush(transactionContextDefinition);
       try {
         transactionContextParser.parseDocumentElement(txCtxElement, parse);
@@ -96,9 +110,9 @@
       }
     }
 
-    parse.setDocumentObject(processEngineImpl);
+    parse.setDocumentObject(processEngine);
     
-    return processEngineImpl;
+    return processEngine;
   }
 
   public Parser getProcessEngineContextParser() {

Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/wire/binding/JobExecutorBinding.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/wire/binding/JobExecutorBinding.java	2009-10-09 14:58:08 UTC (rev 5725)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/wire/binding/JobExecutorBinding.java	2009-10-09 15:29:24 UTC (rev 5726)
@@ -25,7 +25,6 @@
 import org.jbpm.pvm.internal.jobexecutor.JobExecutor;
 import org.jbpm.pvm.internal.util.XmlUtil;
 import org.jbpm.pvm.internal.wire.descriptor.AbstractDescriptor;
-import org.jbpm.pvm.internal.wire.descriptor.ContextTypeRefDescriptor;
 import org.jbpm.pvm.internal.wire.descriptor.IntegerDescriptor;
 import org.jbpm.pvm.internal.wire.descriptor.JobExecutorDescriptor;
 import org.jbpm.pvm.internal.wire.descriptor.ObjectDescriptor;

Modified: jbpm4/trunk/modules/test-cactus/src/test/java/org/jbpm/test/AllIntegrationTests.java
===================================================================
--- jbpm4/trunk/modules/test-cactus/src/test/java/org/jbpm/test/AllIntegrationTests.java	2009-10-09 14:58:08 UTC (rev 5725)
+++ jbpm4/trunk/modules/test-cactus/src/test/java/org/jbpm/test/AllIntegrationTests.java	2009-10-09 15:29:24 UTC (rev 5726)
@@ -49,7 +49,6 @@
     suite.addTestSuite(org.jbpm.examples.goup.multipleentries.MultipleEntriesTest.class);
     suite.addTestSuite(org.jbpm.examples.goup.simple.GroupSimpleTest.class);
     suite.addTestSuite(org.jbpm.examples.goup.timer.GroupTimerTest.class);
-    suite.addTestSuite(org.jbpm.test.activity.decision.DecisionTest.class);
     suite.addTestSuite(org.jbpm.test.activities.ForkJoinInSameTransactionTest.class);
     suite.addTestSuite(org.jbpm.test.activities.ForkTest.class);
     suite.addTestSuite(org.jbpm.test.activities.ForkToTaskTest.class);
@@ -60,6 +59,13 @@
     suite.addTestSuite(org.jbpm.test.activities.StateTest.class);
     suite.addTestSuite(org.jbpm.test.activities.SubProcessTest.class);
     suite.addTestSuite(org.jbpm.test.activities.TasksJoinEndTest.class);
+    suite.addTestSuite(org.jbpm.test.activity.custom.CustomConfigurationsTest.class);
+    suite.addTestSuite(org.jbpm.test.activity.decision.DecisionTest.class);
+    suite.addTestSuite(org.jbpm.test.activity.task.TaskAssignmentHandlerExprTest.class);
+    suite.addTestSuite(org.jbpm.test.activity.task.TaskCandidatesTest.class);
+    suite.addTestSuite(org.jbpm.test.activity.task.TaskCompletionTest.class);
+    suite.addTestSuite(org.jbpm.test.activity.task.TaskOutcomesTest.class);
+    suite.addTestSuite(org.jbpm.test.activity.task.TaskReassignTest.class);
     suite.addTestSuite(org.jbpm.test.async.AsyncBasicsTest.class);
     suite.addTestSuite(org.jbpm.test.async.AsyncEndCombinationTest.class);
     suite.addTestSuite(org.jbpm.test.async.AsyncEventListenerOnEndTest.class);
@@ -85,6 +91,7 @@
     suite.addTestSuite(org.jbpm.test.history.HistoryTaskAssigneeTest.class);
     suite.addTestSuite(org.jbpm.test.history.ProcessInstanceHistoryTest.class);
     suite.addTestSuite(org.jbpm.test.identity.IdentityTest.class);
+    suite.addTestSuite(org.jbpm.test.migration.InstanceMigratorTest.class);
     suite.addTestSuite(org.jbpm.test.process.ActivityCoordinatesTest.class);
     suite.addTestSuite(org.jbpm.test.process.DeploymentResourcesTest.class);
     suite.addTestSuite(org.jbpm.test.process.DescriptionTest.class);
@@ -107,10 +114,6 @@
     suite.addTestSuite(org.jbpm.test.task.TaskQueryCandidatesTest.class);
     suite.addTestSuite(org.jbpm.test.task.TaskQueryProcessTest.class);
     suite.addTestSuite(org.jbpm.test.task.TaskVariablesTest.class);
-    suite.addTestSuite(org.jbpm.test.activity.task.TaskCandidatesTest.class);
-    suite.addTestSuite(org.jbpm.test.activity.task.TaskCompletionTest.class);
-    suite.addTestSuite(org.jbpm.test.activity.task.TaskOutcomesTest.class);
-    suite.addTestSuite(org.jbpm.test.activity.task.TaskReassignTest.class);
     suite.addTestSuite(org.jbpm.test.timer.TaskTimerTaskTest.class);
     suite.addTestSuite(org.jbpm.test.timer.TimerTest.class);
     suite.addTestSuite(org.jbpm.test.variables.BasicVariablesTest.class);

Modified: jbpm4/trunk/pom.xml
===================================================================
--- jbpm4/trunk/pom.xml	2009-10-09 14:58:08 UTC (rev 5725)
+++ jbpm4/trunk/pom.xml	2009-10-09 15:29:24 UTC (rev 5726)
@@ -100,6 +100,11 @@
       </dependency>
       <dependency>
         <groupId>org.jbpm.jbpm4</groupId>
+        <artifactId>jbpm-jboss</artifactId>
+        <version>${version}</version>
+      </dependency>
+      <dependency>
+        <groupId>org.jbpm.jbpm4</groupId>
         <artifactId>jbpm-jpdl</artifactId>
         <version>${version}</version>
       </dependency>
@@ -499,6 +504,7 @@
       <id>distro</id>
       <modules>
         <module>modules/enterprise</module>
+        <module>modules/jboss</module>
         <module>modules/db</module>
         <module>modules/distro</module>
       </modules>



More information about the jbpm-commits mailing list