[jbpm-commits] JBoss JBPM SVN: r5591 - in jbpm4/trunk: modules/distro/src/main/files/install and 7 other directories.

do-not-reply at jboss.org do-not-reply at jboss.org
Sun Aug 30 06:38:09 EDT 2009


Author: tom.baeyens at jboss.com
Date: 2009-08-30 06:38:08 -0400 (Sun, 30 Aug 2009)
New Revision: 5591

Removed:
   jbpm4/trunk/modules/test-cactus/src/test/java/org/jbpm/test/AllIntegrationTests.java
Modified:
   jbpm4/trunk/modules/distro/src/main/files/examples/build.xml
   jbpm4/trunk/modules/distro/src/main/files/install/build.xml
   jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config.jboss5/deploy/jbpm/jbpm-service.sar/jbpm-service-jboss-beans.xml
   jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/datasources/jbpm-hsqldb-ds.xml
   jbpm4/trunk/modules/integration/spi/src/main/java/org/jbpm/integration/spi/JBPMService.java
   jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/jobexecutor/AcquireJobsCmd.java
   jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/jobexecutor/DispatcherThread.java
   jbpm4/trunk/modules/userguide/src/main/docbook/en/modules/ch02-Installation.xml
   jbpm4/trunk/qa/build.xml
Log:
fixed job executor exceptions during startup of jboss

Modified: jbpm4/trunk/modules/distro/src/main/files/examples/build.xml
===================================================================
--- jbpm4/trunk/modules/distro/src/main/files/examples/build.xml	2009-08-30 07:09:09 UTC (rev 5590)
+++ jbpm4/trunk/modules/distro/src/main/files/examples/build.xml	2009-08-30 10:38:08 UTC (rev 5591)
@@ -43,7 +43,7 @@
 		<copy file="${jbpm.home}/install/src/cfg/hibernate/jdbc/${database}.hibernate.cfg.xml"
 			    tofile="${jbpm.home}/examples/target/classes/jbpm.hibernate.cfg.xml" 
 		      overwrite="true">
-			<filterset filtersfile="${jbpm.home}/install/src/jdbc/${database}.properties" />
+			<filterset filtersfile="${jbpm.home}/install/jdbc/${database}.properties" />
 		</copy>
 		<jar destfile="${jbpm.home}/examples/target/examples.bar">
 			<fileset dir="${jbpm.home}/examples/src">

Modified: jbpm4/trunk/modules/distro/src/main/files/install/build.xml
===================================================================
--- jbpm4/trunk/modules/distro/src/main/files/install/build.xml	2009-08-30 07:09:09 UTC (rev 5590)
+++ jbpm4/trunk/modules/distro/src/main/files/install/build.xml	2009-08-30 10:38:08 UTC (rev 5591)
@@ -6,11 +6,11 @@
   <property file="${user.home}/.jbpm4/build.properties" />
 
   <!-- USER CUSTOMIZABLE PROPERTIES -->
-  <property name="database" value="hsqldb" /> <!-- hsqldb | mysql | oracle | postgresql} -->
+  <property name="database" value="hsqldb" /> <!-- {hsqldb | mysql | oracle | postgresql} -->
   <echo message="database......... ${database}" />
-  <property name="tx" value="standalone" /> <!-- standalone | jta | spring} -->
+  <property name="tx" value="standalone" /> <!-- {standalone | jta | spring} -->
   <echo message="tx............... ${tx}" />
-	<property name="mail.smtp.host" value="localhost" />
+  <property name="mail.smtp.host" value="localhost" />
   <echo message="mail.smtp.host... ${mail.smtp.host}" />
 
   <!-- INTERNAL PROPERTY DEFAULTS -->
@@ -24,10 +24,10 @@
   <property name="mail.cfg" value="default" />
 
   <property name="jdbc.properties.dir" value="${jbpm.home}/install/jdbc" />
-	<property file="${jdbc.properties.dir}/${database}.properties" />
-	
-	<property name="examples.file" value="${jbpm.home}/examples/target/examples.jar"/>
+  <property file="${jdbc.properties.dir}/${database}.properties" />
   
+  <property name="examples.file" value="${jbpm.home}/examples/target/examples.jar"/>
+  
   <property name="tomcat.version" value="6.0.20" />
   <property name="tomcat.parent.dir" value="${jbpm.home}" />
   <property name="tomcat.home" value="${tomcat.parent.dir}/apache-tomcat-${tomcat.version}" />
@@ -35,9 +35,9 @@
   <property name="tomcat.distro.dir" value="downloads" />
   <property name="tomcat.distro.url" value="http://www.apache.org/dist/tomcat/tomcat-6/v${tomcat.version}/bin/${tomcat.filename}" />
   <property name="tomcat.distro.path" value="${tomcat.distro.dir}/${tomcat.filename}" />
-	<property name="tomcat.lib.dir" value="${tomcat.home}/lib" />
-	<property name="tomcat.webapps.dir" value="${tomcat.home}/webapps" />
-	
+  <property name="tomcat.lib.dir" value="${tomcat.home}/lib" />
+  <property name="tomcat.webapps.dir" value="${tomcat.home}/webapps" />
+  
   <property name="hsqldb.server.install.dir" value="${jbpm.home}/hsqldb-server"/>
   <property name="hsqldb.server.source.dir" value="${jbpm.home}/install/src/hsqldb-server" />
 
@@ -51,16 +51,16 @@
   <property name="jboss.server.configuration" value="default" />
   <property name="jboss.server.config.dir" value="${jboss.home}/server/${jboss.server.configuration}" />
   <property name="jboss.server.data.dir" value="${jboss.home}/server/${jboss.server.configuration}/data" />
-	<property name="jboss.server.deploy.dir" value="${jboss.home}/server/${jboss.server.configuration}/deploy" />
+  <property name="jboss.server.deploy.dir" value="${jboss.home}/server/${jboss.server.configuration}/deploy" />
 
-	<property name="signavio.war.file.name" value="jbpmeditor.war" />
-	<property name="signavio.src.dir" value="${jbpm.home}/install/src/signavio" />
-	<property name="signavio.repo.dir.name" value="signavio-repository" />
-	<property name="signavio.repo.dir" value="${jbpm.home}/${signavio.repo.dir.name}"/>
-	
-	<dirname property="current.dir" file="../jbpm.jar" />
-	<echo message="current dir = ${current.dir}" />
-	
+  <property name="signavio.war.file.name" value="jbpmeditor.war" />
+  <property name="signavio.src.dir" value="${jbpm.home}/install/src/signavio" />
+  <property name="signavio.repo.dir.name" value="signavio-repository" />
+  <property name="signavio.repo.dir" value="${jbpm.home}/${signavio.repo.dir.name}"/>
+
+  <dirname property="current.dir" file="../jbpm.jar" />
+  <echo message="current dir = ${current.dir}" />
+  
    <!-- GENERAL CONDITIONS -->
   <condition property="is.jboss.distro.available">
     <available file="${jboss.distro.path}" />
@@ -74,7 +74,10 @@
       <os family="mac" />
     </or>
   </condition>
-	
+  <condition property="hsqldb.needed">
+     <equals arg1="${database}" arg2="hsqldb" />
+   </condition>
+  
   <!-- OS CONDITIONS -->
   <condition property="isWindows">
     <os family="windows"/>
@@ -85,7 +88,7 @@
     </not>
   </condition>
 
-	<condition property="is.jboss.500">
+  <condition property="is.jboss.500">
     <equals arg1="${jboss.version}" arg2="5.0.0.GA"/>
   </condition>
 
@@ -142,25 +145,27 @@
           description="installs jboss, installs jbpm into jboss, starts jboss, creates the jBPM DB schema, deploys examples, loads example identities, installs and starts eclipse">
     <antcall target="internal.enable.jboss.debug.jboss500" />
     <antcall target="internal.enable.jboss.debug.jboss510" />
+    <antcall target="internal.install.and.start.hsqldb.if.needed" />
+    <antcall target="create.jbpm.schema" />
     <antcall target="start.jboss" />
-    <antcall target="create.jbpm.schema" />
     <antcall target="install.examples.into.jboss" />
     <antcall target="load.example.identities" />
     <antcall target="install.eclipse" />
     <antcall target="start.eclipse" />
   </target>
 
+  <!-- ### DEMO TEARDOWN JBOSS ##################################################### -->
   <target name="demo.teardown.jboss" 
           description="drops the jbpm db schema and stops jboss">
     <ant antfile="${jbpm.home}/db/build.xml" target="drop.jbpm.schema" />
     <antcall target="stop.jboss" />
   </target>
-	
+  
   <!-- ### CLEAN CONFIGURATION DIR ########################################### -->
   <target name="clean.cfg.dir" description="Deletes the ${cfg.dest.dir}">
     <delete dir="${cfg.dest.dir}" />
   </target>
-  	
+    
   <!-- ### CREATE CONFIGURATION ########################################### -->
   <target name="create.cfg" description="Creates a configuration in ${cfg.dest.dir}">
     <mkdir dir="${cfg.dest.dir}" />
@@ -169,16 +174,16 @@
           overwrite="true" />
     <copy tofile="${cfg.dest.dir}/jbpm.hibernate.cfg.xml" 
           file="${install.src.dir}/cfg/hibernate/${hibernate.connection.type}/${database}.hibernate.cfg.xml"
-    	    overwrite="true">
+          overwrite="true">
       <filterset filtersfile="${jdbc.properties.dir}/${database}.properties" />
     </copy>
     <copy todir="${cfg.dest.dir}"
-    	    overwrite="true">
+          overwrite="true">
       <fileset dir="${install.src.dir}/cfg/logging/${logging}" />
     </copy>
     <copy tofile="${cfg.dest.dir}/jbpm.mail.properties" 
           file="${install.src.dir}/cfg/mail/jbpm.mail.${mail.cfg}.properties" 
-    	    overwrite="true">
+          overwrite="true">
       <filterset>
         <filter token="mail.smtp.host" value="${mail.smtp.host}" />
       </filterset>
@@ -291,11 +296,11 @@
         <include name="gwt-console-rpc.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 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">
@@ -352,15 +357,15 @@
     <property name="container.lib.dir" value="${jboss.server.config.dir}/deploy/jbpm/jbpm-service.sar" />
     <antcall target="internal.copy.database.driver" />
   </target>
-	
-	 <!-- ### INSTALL EXAMPLES INTO JBOSS ################################################ -->  
-	<target name="install.examples.into.jboss">
-	    <ant antfile="${jbpm.home}/examples/build.xml" target="create.and.deploy.examples" />
-	    <mkdir dir="${jboss.server.config.dir}/deploy/jbpm/userlibs" />
-	    <copy file="${examples.file}"
-	          todir="${jboss.server.config.dir}/deploy/jbpm/userlibs" 
-	          overwrite="true" />
-	</target>
+  
+  <!-- ### INSTALL EXAMPLES INTO JBOSS ################################################ -->  
+  <target name="install.examples.into.jboss">
+      <ant antfile="${jbpm.home}/examples/build.xml" target="create.and.deploy.examples" />
+      <mkdir dir="${jboss.server.config.dir}/deploy/jbpm/userlibs" />
+      <copy file="${examples.file}"
+            todir="${jboss.server.config.dir}/deploy/jbpm/userlibs" 
+            overwrite="true" />
+  </target>
 
   <!-- ### START JBOSS ################################################### -->
   <target name="start.jboss" 
@@ -386,24 +391,26 @@
       <arg line="-S"/>
     </exec>
   </target>
-	
-	 <!-- ### TOMCAT DEMO SETUP ################################################ -->  
-	<target name="demo.setup.tomcat" 
-	        depends="delete.tomcat, install.tomcat, install.jbpm.into.tomcat"
-	          description="installs tomcat, installs jbpm into tomcat, starts tomcat, creates the jBPM DB schema, deploys examples, loads example identities, installs and starts eclipse">
-	      
-	      <condition property="hsqldb.needed">
-	        <equals arg1="${database}" arg2="hsqldb" />
-	      </condition>
-	      <antcall target="internal.install.and.start.hqsldb.if.needed" />
-	      <antcall target="create.jbpm.schema" /> 
-	      <antcall target="install.examples.into.tomcat" />
-	      <antcall target="install.example.identities.into.tomcat" />
-	      <antcall target="start.tomcat" />
-	      <antcall target="install.eclipse" />
-	      <antcall target="start.eclipse" />
-	  </target>
+  
+   <!-- ### DEMO SETUP TOMCAT ################################################ -->  
+  <target name="demo.setup.tomcat" 
+          depends="delete.tomcat, install.tomcat, install.jbpm.into.tomcat"
+          description="installs tomcat, installs jbpm into tomcat, starts tomcat, creates the jBPM DB schema, deploys examples, loads example identities, installs and starts eclipse">
+        <antcall target="internal.install.and.start.hsqldb.if.needed" />
+        <antcall target="create.jbpm.schema" /> 
+        <antcall target="install.examples.into.tomcat" />
+        <antcall target="install.example.identities.into.tomcat" />
+        <antcall target="start.tomcat" />
+        <antcall target="install.eclipse" />
+        <antcall target="start.eclipse" />
+    </target>
 
+  <!-- ### DEMO TEARDOWN TOMCAT ################################################ -->  
+  <target name="demo.teardown.tomcat" 
+          depends="stop.tomcat, internal.stop.hsqldb.server.if.needed"
+          description="stops tomcat and then the hsqldb server if needed">
+  </target>
+
   <!-- ### REINSTALL TOMCAT ################################################ -->
   <target name="reinstall.tomcat" 
           depends="delete.tomcat, install.tomcat" 
@@ -424,16 +431,16 @@
           depends="get.tomcat"
           description="Downloads tomcat to ${tomcat.distro.dir} if its not available and then unzips tomcat">
     <unzip src="${tomcat.distro.path}" dest="${tomcat.parent.dir}" />
-  	<antcall target="install.tomcat.linuxandmac" />
+    <antcall target="install.tomcat.linuxandmac" />
   </target>
 
-	<target name="install.tomcat.linuxandmac" if="is.linux.unix.or.mac">
-	  <chmod perm="a+x" os="Linux, Mac OS X">
+  <target name="install.tomcat.linuxandmac" if="is.linux.unix.or.mac">
+    <chmod perm="a+x" os="Linux, Mac OS X">
       <fileset dir="${tomcat.home}/bin">
         <include name="*.sh" />
       </fileset>
     </chmod>
-	</target>
+  </target>
   
   <!-- ### GET TOMCAT ###################################################### -->
   <target name="get.tomcat" 
@@ -445,10 +452,10 @@
 
   <!-- ### INSTALL JBPM INTO TOMCAT ####################################### -->
   <target name="install.jbpm.into.tomcat"
-  		  depends="create.cfg"
+        depends="create.cfg"
         description="Installs jBPM into tomcat">
-  	
-  	<property name="is.tomcat" value="true" />
+    
+    <property name="is.tomcat" value="true" />
 
     <!-- create the jbpm configuration jar file and drop in /lib -->
     <jar destfile="${tomcat.home}/lib/jbpm.cfg.jar">
@@ -457,7 +464,7 @@
       </fileset>
     </jar>
 
-  	<!-- Copy jBPM third party libs into /lib -->
+    <!-- Copy jBPM third party libs into /lib -->
     <copy todir="${tomcat.home}/lib" overwrite="true">
       <fileset dir="${jbpm.home}">
         <include name="jbpm.jar" />
@@ -466,18 +473,18 @@
         <include name="activation.jar" />
         <include name="antlr.jar" />
         <include name="commons-collections.jar" />
-      	<include name="commons-logging.jar" />
+        <include name="commons-logging.jar" />
         <include name="dom4j.jar" />
         <include name="freemarker.jar" />
         <include name="hibernate-core.jar" />
         <include name="hibernate-cglib-repack.jar" />
         <include name="javassist.jar" />
-      	<include name="jbpm-spi.jar" />
-      	<include name="jbpm-tomcat6.jar" />
+        <include name="jbpm-spi.jar" />
+        <include name="jbpm-tomcat6.jar" />
         <include name="jta.jar" />
         <include name="juel*.jar" />
         <include name="livetribe-jsr223.jar" />
-      	<include name="log4j.jar" />
+        <include name="log4j.jar" />
         <include name="mail.jar" />
         <include name="slf4j-api.jar" />
         <include name="slf4j-jdk14.jar" />
@@ -489,22 +496,23 @@
       </fileset>
     </copy>
 
-  	<!-- Copy jbpm-console wars into /webapps -->
+    <!-- Copy jbpm-console wars into /webapps -->
     <copy todir="${tomcat.home}/webapps" overwrite="true">
       <fileset dir="${jbpm.home}/lib">
         <include name="gwt-console-jbpm.war" />
         <include name="gwt-console-server-jbpm.war" />
       </fileset>
     </copy>
-  	
-  	<!-- Copy Signavio war into /webapps -->
-  	<antcall target="install.signavio.into.tomcat" />
-  	
-  	<!-- Rename wars (the context root is configured by WEB-INF/jboss-web.xml,
-  	    which is neglected by Tomcat -->
-	<move file="${tomcat.home}/webapps/gwt-console-jbpm.war" tofile="${tomcat.home}/webapps/jbpm-console.war" />
-	<move file="${tomcat.home}/webapps/gwt-console-server-jbpm.war" tofile="${tomcat.home}/webapps/gwt-console-server.war" />
     
+    <!-- Copy Signavio war into /webapps
+    <antcall target="install.signavio.into.tomcat" />
+    -->
+    
+    <!-- Rename wars (the context root is configured by WEB-INF/jboss-web.xml,
+        which is neglected by Tomcat -->
+    <move file="${tomcat.home}/webapps/gwt-console-jbpm.war" tofile="${tomcat.home}/webapps/jbpm-console.war" />
+    <move file="${tomcat.home}/webapps/gwt-console-server-jbpm.war" tofile="${tomcat.home}/webapps/gwt-console-server.war" />
+    
     <!-- reporting -->
     <property name="birt.dir" value="${tomcat.home}/birt"/>
     <mkdir dir="${birt.dir}"/>
@@ -514,33 +522,33 @@
     <!-- copy database driver -->
     <property name="database.driver.destination.dir" value="${tomcat.home}/lib" />
     <antcall target="internal.copy.database.driver" />
-  	
+    
   </target>
-	
-	<!-- ### INSTALL EXAMPLES INTO TOMCAT ################################################ -->  
-	<target name="install.examples.into.tomcat"
-	          description="deploys all the example processes">
-		<ant antfile="${jbpm.home}/examples/build.xml" target="create.and.deploy.examples" />
-	  <copy file="${examples.file}"
-	        todir="${tomcat.home}/lib" 
-	        overwrite="true" />
-	</target>
-	
-  <!-- ### INSTALL HSQLDB SERVER ################################################ -->	
+  
+  <!-- ### INSTALL EXAMPLES INTO TOMCAT ################################################ -->  
+  <target name="install.examples.into.tomcat"
+            description="deploys all the example processes">
+    <ant antfile="${jbpm.home}/examples/build.xml" target="create.and.deploy.examples" />
+    <copy file="${examples.file}"
+          todir="${tomcat.home}/lib" 
+          overwrite="true" />
+  </target>
+  
+  <!-- ### INSTALL HSQLDB SERVER ################################################ -->  
   <target name="install.hsqldb.server">
-  	<delete dir="${hsqldb.server.install.dir}" /> <!-- Also deletes old data --> 
-  	<mkdir dir="${hsqldb.server.install.dir}"/>
-  	<copy file="${jbpm.home}/lib/hsqldb.jar" todir="${hsqldb.server.install.dir}" />
-  	<copy todir="${hsqldb.server.install.dir}">
-  		<fileset dir="${hsqldb.server.source.dir}" />
-  	</copy>
-  	<chmod perm="a+x" os="Linux, Mac OS X">
-  		<fileset dir="${hsqldb.server.install.dir}">
-  			<include name="*.sh"/>
-  		</fileset>
-  	</chmod>
+    <delete dir="${hsqldb.server.install.dir}" /> <!-- Also deletes old data --> 
+    <mkdir dir="${hsqldb.server.install.dir}"/>
+    <copy file="${jbpm.home}/lib/hsqldb.jar" todir="${hsqldb.server.install.dir}" />
+    <copy todir="${hsqldb.server.install.dir}">
+      <fileset dir="${hsqldb.server.source.dir}" />
+    </copy>
+    <chmod perm="a+x" os="Linux, Mac OS X">
+      <fileset dir="${hsqldb.server.install.dir}">
+        <include name="*.sh"/>
+      </fileset>
+    </chmod>
   </target>
-	
+  
   <!-- ### START HSQLDB SERVER ################################################ -->
   <target name="start.hsqldb.server" >
     <taskdef name="start-hsqldb-server" classname="org.jbpm.pvm.internal.ant.StartHsqldbServerTask">
@@ -549,32 +557,26 @@
           <include name="jbpm.jar"/>
         </fileset>
       </classpath>
-  	</taskdef>
-  	<start-hsqldb-server hsqldbServerHome="${hsqldb.server.install.dir}" />
+    </taskdef>
+    <start-hsqldb-server hsqldbServerHome="${hsqldb.server.install.dir}" />
   </target>
-	
+  
   <!-- ### SHUTDOWN HSQLDB SERVER ################################################ -->
-  <target name="shutdown.hsqldb.server">
+  <target name="stop.hsqldb.server">
     <sql driver="${jdbc.driver}" 
-    	 password="${jdbc.password}" 
-    	 url="${jdbc.url}" 
-    	 userid="${jdbc.username}" 
-    	 autocommit="true"
-    	 src="${hsqldb.server.install.dir}/shutdown.sql">
-    	<classpath>
-    	  <fileset dir="${hsqldb.server.install.dir}">
-    	    <include name="hsqldb.jar"/>
-    	  </fileset>
-    	</classpath>
+       password="${jdbc.password}" 
+       url="${jdbc.url}" 
+       userid="${jdbc.username}" 
+       autocommit="true"
+       src="${hsqldb.server.install.dir}/shutdown.sql">
+      <classpath>
+        <fileset dir="${hsqldb.server.install.dir}">
+          <include name="hsqldb.jar"/>
+        </fileset>
+      </classpath>
     </sql>
   </target>
-	
-	<target name="internal.install.and.start.hqsldb.if.needed" if="hsqldb.needed">
-	  <antcall target="install.hsqldb.server" />
-	  <antcall target="start.hsqldb.server" />
-	</target>
-  	
-
+  
   <!-- ### START TOMCAT ################################################### -->
   <target name="start.tomcat" 
           description="Starts Tomcat and waits till it is booted, then lets Tomcat run in the background">
@@ -602,11 +604,11 @@
       <arg line="stop"/>
     </exec>
   </target>
-	
+  
   <!-- ### CREATE JBPM SCHEMA ############################################# -->
   <target name="create.jbpm.schema" 
           description="creates the jbpm tables in the database">
-  	<echo message="creating jbpm schema in db ${jdbc.url}" />
+    <echo message="creating jbpm schema in db ${jdbc.url}" />
     <sql driver="${jdbc.driver}"
          url="${jdbc.url}"
          userid="${jdbc.username}"
@@ -656,14 +658,14 @@
       </classpath>
     </sql>
   </target>
-	
-	<!-- ### INSTALL EXAMPLE IDENTITIES INTO TOMCAT ######################################## -->
+  
+  <!-- ### INSTALL EXAMPLE IDENTITIES INTO TOMCAT ######################################## -->
   <target name="install.example.identities.into.tomcat" depends="load.example.identities">
-  	<copy file="${install.src.dir}/tomcat/server.xml"
-  		    tofile="${tomcat.home}/conf/server.xml" 
-  	      overwrite="true">
-  	      <filterset filtersfile="${jdbc.properties.dir}/${database}.properties" />
-  	 </copy>
+    <copy file="${install.src.dir}/tomcat/server.xml"
+          tofile="${tomcat.home}/conf/server.xml" 
+          overwrite="true">
+          <filterset filtersfile="${jdbc.properties.dir}/${database}.properties" />
+     </copy>
   </target>
 
   <!-- ### START HSQLDB DATABASE MGR ##################################### -->
@@ -679,27 +681,6 @@
     </java>
   </target>
 
-  <!-- ### SET SIGNAVIO REPO DIR ##################################### -->
-  <target name="internal.set.signavio.repo.dir">
-    <mkdir dir="${jbpm.home}/signavio-repository" />
-  	
-  	<!-- unzip the signavio war -->
-  	<property name="temp.signavio.unzip" value="${jbpm.home}/temp-signavio-unzip" />
-  	<delete dir="${temp.signavio.unzip}" />
-  	<mkdir dir="${temp.signavio.unzip}" />
-  	<unzip src="${jbpm.home}/install/src/signavio/${signavio.war.file.name}" dest="${temp.signavio.unzip}" />
-  	
-  	<!-- replace the repo dir in he unzipped WEB-INF/web.xml -->
-  	<replaceregexp file="${temp.signavio.unzip}/WEB-INF/web.xml" flags="s"
-  	               match="&lt;param-name&gt;fileSystemRootDirectory&lt;/param-name&gt;.*?&lt;param-value&gt;.*?&lt;/param-value&gt;"
-  	             replace="&lt;param-name&gt;fileSystemRootDirectory&lt;/param-name&gt;&lt;param-value&gt;${current.dir}/${signavio.repo.dir.name}&lt;/param-value&gt;"/>
-  	
-  	<!-- zip it up again and copy it back to /lib-->
-  	<zip destfile="${temp.signavio.unzip}/${signavio.war.file.name}" basedir="${temp.signavio.unzip}" />
-  	<copy file="${temp.signavio.unzip}/${signavio.war.file.name}" todir="${signavio.src.dir}" overwrite="true"/>
-  	<delete dir="${temp.signavio.unzip}" />
-  </target>
-
   <!-- ### INSTALL ECLIPSE ################################################ -->
   <target name="install.eclipse" 
           depends="get.eclipse"
@@ -737,8 +718,28 @@
     </exec>
   </target>
 
-  <!-- ### INTERNAL TARGETS ################################################## -->
+  <target name="install.signavio.into.jboss" depends="internal.set.signavio.repo.dir">
+    <!-- Current version of Signavio needs to be unpacked in /deploy to work correctly -->
+    <unzip src="${signavio.src.dir}/${signavio.war.file.name}" dest="${jboss.server.deploy.dir}/${signavio.war.file.name}" />
+  </target>
 
+  <target name="install.signavio.into.tomcat" depends="internal.set.signavio.repo.dir">
+    <copy file="${signavio.src.dir}/${signavio.war.file.name}" todir="${tomcat.webapps.dir}"/>
+  </target>
+	
+  <!-- ######################## -->
+  <!-- ### INTERNAL TARGETS ### -->
+  <!-- ######################## -->
+
+  <target name="internal.install.and.start.hsqldb.if.needed" if="hsqldb.needed">
+    <antcall target="install.hsqldb.server" />
+    <antcall target="start.hsqldb.server" />
+  </target>
+    
+  <target name="internal.stop.hsqldb.server.if.needed" if="hsqldb.needed">
+    <antcall target="stop.hsqldb.server" />
+  </target>
+    
   <target name="internal.enable.jboss.debug.jboss500" if="is.jboss.500">
     <echo message="enabling debug on ${jboss.home}" />
     <replace file="${jboss.home}/bin/run.bat" 
@@ -785,14 +786,25 @@
     <echo message="Copying database driver ${database.driver} to ${database.driver.destination.dir}" />
     <copy file="${jbpm.home}/lib/${database.driver}" todir="${database.driver.destination.dir}" />
   </target>
-  
-  <target name="install.signavio.into.jboss" depends="internal.set.signavio.repo.dir">
-    <!-- Current version of Signavio needs to be unpacked in /deploy to work correctly -->
-    <unzip src="${signavio.src.dir}/${signavio.war.file.name}" dest="${jboss.server.deploy.dir}/${signavio.war.file.name}" />
-  </target>
 
-  <target name="install.signavio.into.tomcat" depends="internal.set.signavio.repo.dir">
-    <copy file="${signavio.src.dir}/${signavio.war.file.name}" todir="${tomcat.webapps.dir}"/>
+  <target name="internal.set.signavio.repo.dir">
+    <mkdir dir="${jbpm.home}/signavio-repository" />
+    
+    <!-- unzip the signavio war -->
+    <property name="temp.signavio.unzip" value="${jbpm.home}/temp-signavio-unzip" />
+    <delete dir="${temp.signavio.unzip}" />
+    <mkdir dir="${temp.signavio.unzip}" />
+    <unzip src="${jbpm.home}/install/src/signavio/${signavio.war.file.name}" dest="${temp.signavio.unzip}" />
+    
+    <!-- replace the repo dir in he unzipped WEB-INF/web.xml -->
+    <replaceregexp file="${temp.signavio.unzip}/WEB-INF/web.xml" flags="s"
+                   match="&lt;param-name&gt;fileSystemRootDirectory&lt;/param-name&gt;.*?&lt;param-value&gt;.*?&lt;/param-value&gt;"
+                 replace="&lt;param-name&gt;fileSystemRootDirectory&lt;/param-name&gt;&lt;param-value&gt;${current.dir}/${signavio.repo.dir.name}&lt;/param-value&gt;"/>
+    
+    <!-- zip it up again and copy it back to /lib-->
+    <zip destfile="${temp.signavio.unzip}/${signavio.war.file.name}" basedir="${temp.signavio.unzip}" />
+    <copy file="${temp.signavio.unzip}/${signavio.war.file.name}" todir="${signavio.src.dir}" overwrite="true"/>
+    <delete dir="${temp.signavio.unzip}" />
   </target>
 
   <target name="internal.install.eclipse.windows" if="isWindows">

Modified: jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config.jboss5/deploy/jbpm/jbpm-service.sar/jbpm-service-jboss-beans.xml
===================================================================
--- jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config.jboss5/deploy/jbpm/jbpm-service.sar/jbpm-service-jboss-beans.xml	2009-08-30 07:09:09 UTC (rev 5590)
+++ jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/config.jboss5/deploy/jbpm/jbpm-service.sar/jbpm-service-jboss-beans.xml	2009-08-30 10:38:08 UTC (rev 5591)
@@ -8,6 +8,9 @@
   <bean name="org.jbpm:service=ProcessEngine"
         class="org.jbpm.integration.spi.JBPMService">
     <property name="serverConfig"><inject bean="org.jbpm:service=ServerConfig"/></property>
+    <property name="dataSource">
+      <inject bean="jboss.jca:name=JbpmDS,service=DataSourceBinding" />
+    </property>
   </bean>
 
   <!--

Modified: jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/datasources/jbpm-hsqldb-ds.xml
===================================================================
--- jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/datasources/jbpm-hsqldb-ds.xml	2009-08-30 07:09:09 UTC (rev 5590)
+++ jbpm4/trunk/modules/distro/src/main/files/install/src/jboss/datasources/jbpm-hsqldb-ds.xml	2009-08-30 10:38:08 UTC (rev 5591)
@@ -24,14 +24,6 @@
     <metadata>
       <type-mapping>Hypersonic SQL</type-mapping>
     </metadata>
-
-    <!-- ensure the datasource is not initialized before the database itself -->
-    <depends>jboss:service=Hypersonic,database=jbpm4DB</depends>
   </local-tx-datasource>
 
-  <mbean code="org.jboss.jdbc.HypersonicDatabase" name="jboss:service=Hypersonic,database=jbpm4DB">
-    <attribute name="Database">jbpm4DB</attribute>
-    <attribute name="InProcessMode">false</attribute>
-  </mbean>
-
 </datasources>

Modified: jbpm4/trunk/modules/integration/spi/src/main/java/org/jbpm/integration/spi/JBPMService.java
===================================================================
--- jbpm4/trunk/modules/integration/spi/src/main/java/org/jbpm/integration/spi/JBPMService.java	2009-08-30 07:09:09 UTC (rev 5590)
+++ jbpm4/trunk/modules/integration/spi/src/main/java/org/jbpm/integration/spi/JBPMService.java	2009-08-30 10:38:08 UTC (rev 5591)
@@ -21,13 +21,13 @@
  */
 package org.jbpm.integration.spi;
 
+import javax.naming.InitialContext;
+
 import org.jbpm.api.Configuration;
 import org.jbpm.api.ProcessEngine;
 import org.jbpm.integration.spi.mgmt.ServerConfig;
 import org.jbpm.internal.log.Log;
 
-import javax.naming.InitialContext;
-
 /**
  * @author Heiko.Braun <heiko.braun at jboss.com>
  */
@@ -87,4 +87,7 @@
   {
     this.jndiName = jndiName;
   }
+  
+  public void setDataSource(Object dataSource) {
+  }
 }

Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/jobexecutor/AcquireJobsCmd.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/jobexecutor/AcquireJobsCmd.java	2009-08-30 07:09:09 UTC (rev 5590)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/jobexecutor/AcquireJobsCmd.java	2009-08-30 10:38:08 UTC (rev 5591)
@@ -54,35 +54,45 @@
   public Collection<Long> execute(Environment environment) throws Exception {
     Collection<Long> acquiredJobDbids = new ArrayList<Long>();
 
-    Collection<JobImpl<?>> acquiredJobs = new ArrayList<JobImpl<?>>();
-    
-    DbSession dbSession = environment.get(DbSession.class);
-    log.debug("start querying first acquirable job...");
+    try {
+      Collection<JobImpl<?>> acquiredJobs = new ArrayList<JobImpl<?>>();
+      
+      DbSession dbSession = environment.get(DbSession.class);
+      log.debug("start querying first acquirable job...");
 
-    JobImpl<?> job = dbSession.findFirstAcquirableJob();
+      JobImpl<?> job = dbSession.findFirstAcquirableJob();
 
-    if (job!=null) {
-      if (job.isExclusive()) {
-        log.trace("exclusive acquirable job found ("+job+"). querying for other exclusive jobs to lock them all in one tx...");
-        List<JobImpl<?>> otherExclusiveJobs = dbSession.findExclusiveJobs(job.getProcessInstance());
-        acquiredJobs.addAll(otherExclusiveJobs);
+      if (job!=null) {
+        if (job.isExclusive()) {
+          log.trace("exclusive acquirable job found ("+job+"). querying for other exclusive jobs to lock them all in one tx...");
+          List<JobImpl<?>> otherExclusiveJobs = dbSession.findExclusiveJobs(job.getProcessInstance());
+          acquiredJobs.addAll(otherExclusiveJobs);
+        } else {
+          acquiredJobs.add(job);
+        }
+
+        for (JobImpl<?> acquiredJob: acquiredJobs) {
+          long lockExpirationTime = System.currentTimeMillis()+jobExecutor.getLockMillis();
+          log.trace("trying to obtain a lock for '"+acquiredJob+"' with exp "+timeFormat.format(new Date(lockExpirationTime)));
+          acquiredJob.acquire(jobExecutor.getName(), new Date(lockExpirationTime));
+          acquiredJobDbids.add(acquiredJob.getDbid());
+        }
+
       } else {
-        acquiredJobs.add(job);
+        log.trace("no acquirable jobs in job table");
       }
-
-      for (JobImpl<?> acquiredJob: acquiredJobs) {
-        long lockExpirationTime = System.currentTimeMillis()+jobExecutor.getLockMillis();
-        log.trace("trying to obtain a lock for '"+acquiredJob+"' with exp "+timeFormat.format(new Date(lockExpirationTime)));
-        acquiredJob.acquire(jobExecutor.getName(), new Date(lockExpirationTime));
-        acquiredJobDbids.add(acquiredJob.getDbid());
+      
+      log.debug("locking jobs "+acquiredJobDbids);
+      
+    } catch (Exception e) {
+      // if jboss is still booting exceptions that are due to improper 
+      // dependency configuration can be swallowed
+      // https://jira.jboss.org/jira/browse/JBPM-2501
+      if (e.getMessage().indexOf("JbpmDS not bound")==-1) {
+        throw e;
       }
-
-    } else {
-      log.trace("no acquirable jobs in job table");
     }
     
-    log.debug("locking jobs "+acquiredJobDbids);
-    
     return acquiredJobDbids;
   }
 

Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/jobexecutor/DispatcherThread.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/jobexecutor/DispatcherThread.java	2009-08-30 07:09:09 UTC (rev 5590)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/jobexecutor/DispatcherThread.java	2009-08-30 10:38:08 UTC (rev 5591)
@@ -90,7 +90,12 @@
         } catch (InterruptedException e) {
           log.info((isActive ? "active" : "inactive") + " job dispatcher thread '" + getName() + "' got interrupted");
         } catch (Exception e) {
-          log.error("exception in job executor thread. waiting " + currentIdleInterval + " milliseconds", e);
+          // the exception doesn't have to be logged if jboss is still booting
+          // this should be replaced with proper dependency configuration
+          // https://jira.jboss.org/jira/browse/JBPM-2501
+          if (e.getMessage().indexOf("couldn't lookup 'UserTransaction' from jndi: UserTransaction not bound: UserTransaction not bound")==-1) {
+            log.error("exception in job executor thread. waiting " + currentIdleInterval + " milliseconds", e);
+          }
           try {
             synchronized (semaphore) {
               semaphore.wait(currentIdleInterval);

Deleted: 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-08-30 07:09:09 UTC (rev 5590)
+++ jbpm4/trunk/modules/test-cactus/src/test/java/org/jbpm/test/AllIntegrationTests.java	2009-08-30 10:38:08 UTC (rev 5591)
@@ -1,114 +0,0 @@
-package org.jbpm.test;
-
-import junit.framework.Test;
-import junit.framework.TestCase;
-import org.apache.cactus.ServletTestSuite;
-
-public class AllIntegrationTests extends TestCase {
-
-  public static Test suite() {
-    ServletTestSuite suite = new ServletTestSuite();
-    suite.addTestSuite(org.jbpm.examples.async.activity.AsyncActivityTest.class);
-    suite.addTestSuite(org.jbpm.examples.async.fork.AsyncForkTest.class);
-    suite.addTestSuite(org.jbpm.examples.concurrency.graphbased.ConcurrencyGraphBasedTest.class);
-    suite.addTestSuite(org.jbpm.examples.custom.CustomTest.class);
-    suite.addTestSuite(org.jbpm.examples.decision.conditions.DecisionConditionsTest.class);
-    suite.addTestSuite(org.jbpm.examples.decision.expression.DecisionExpressionTest.class);
-    suite.addTestSuite(org.jbpm.examples.decision.handler.DecisionHandlerTest.class);
-    suite.addTestSuite(org.jbpm.examples.end.multiple.EndMultipleTest.class);
-    suite.addTestSuite(org.jbpm.examples.end.processinstance.EndProcessInstanceTest.class);
-    suite.addTestSuite(org.jbpm.examples.end.state.EndStateTest.class);
-    suite.addTestSuite(org.jbpm.examples.eventlistener.EventListenerTest.class);
-    suite.addTestSuite(org.jbpm.examples.hql.HqlTest.class);
-    suite.addTestSuite(org.jbpm.examples.java.JavaInstantiateTest.class);
-    suite.addTestSuite(org.jbpm.examples.mail.inline.InlineMailTest.class);
-    suite.addTestSuite(org.jbpm.examples.mail.template.TemplateMailTest.class);
-    suite.addTestSuite(org.jbpm.examples.script.expression.ScriptExpressionTest.class);
-    suite.addTestSuite(org.jbpm.examples.script.text.ScriptTextTest.class);
-    suite.addTestSuite(org.jbpm.examples.services.ServicesTest.class);
-    suite.addTestSuite(org.jbpm.examples.sql.SqlTest.class);
-    suite.addTestSuite(org.jbpm.examples.state.choice.StateChoiceTest.class);
-    suite.addTestSuite(org.jbpm.examples.state.sequence.StateSequenceTest.class);
-    suite.addTestSuite(org.jbpm.examples.subprocess.outcomeactivity.SubProcessOutcomeActivityTest.class);
-    suite.addTestSuite(org.jbpm.examples.subprocess.outcomevalue.SubProcessOutcomeValueTest.class);
-    suite.addTestSuite(org.jbpm.examples.subprocess.variables.SubProcessVariablesTest.class);
-    suite.addTestSuite(org.jbpm.examples.task.assignee.TaskAssigneeTest.class);
-    suite.addTestSuite(org.jbpm.examples.task.assignmenthandler.TaskAssignmentHandlerTest.class);
-    suite.addTestSuite(org.jbpm.examples.task.candidates.TaskCandidatesTest.class);
-    suite.addTestSuite(org.jbpm.examples.task.comments.TaskCommentsTest.class);
-    suite.addTestSuite(org.jbpm.examples.task.notification.TaskNotificationTest.class);
-    suite.addTestSuite(org.jbpm.examples.task.reminder.TaskReminderTest.class);
-    suite.addTestSuite(org.jbpm.examples.task.swimlane.TaskSwimlaneTest.class);
-    suite.addTestSuite(org.jbpm.examples.task.variables.TaskVariablesTest.class);
-    suite.addTestSuite(org.jbpm.examples.timer.businesstime.TimerBusinessTimeTest.class);
-    suite.addTestSuite(org.jbpm.examples.timer.event.TimerEventTest.class);
-    suite.addTestSuite(org.jbpm.examples.timer.repeat.TimerRepeatTest.class);
-    suite.addTestSuite(org.jbpm.examples.timer.transition.TimerTransitionTest.class);
-    suite.addTestSuite(org.jbpm.examples.async.eventlistener.AsyncEventListenerTest.class);
-    suite.addTestSuite(org.jbpm.examples.goup.concurrency.GroupConcurrencyTest.class);
-    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.activities.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);
-    suite.addTestSuite(org.jbpm.test.activities.GroupBasicsTest.class);
-    suite.addTestSuite(org.jbpm.test.activities.GroupTimersTest.class);
-    suite.addTestSuite(org.jbpm.test.activities.JoinTest.class);
-    suite.addTestSuite(org.jbpm.test.activities.StatesJoinEndTest.class);
-    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.async.AsyncBasicsTest.class);
-    suite.addTestSuite(org.jbpm.test.async.AsyncEndCombinationTest.class);
-    suite.addTestSuite(org.jbpm.test.async.AsyncEventListenerOnEndTest.class);
-    suite.addTestSuite(org.jbpm.test.auth.UserProvidedAuthenticationTest.class);
-    suite.addTestSuite(org.jbpm.test.cfg.ConfigurationTest.class);
-    suite.addTestSuite(org.jbpm.test.deploy.DeploymentQueryTest.class);
-    suite.addTestSuite(org.jbpm.test.deploy.ImageTest.class);
-    suite.addTestSuite(org.jbpm.test.deploy.SuspendDeploymentTest.class);
-    suite.addTestSuite(org.jbpm.test.eventlistener.EventListenerTest.class);
-    suite.addTestSuite(org.jbpm.test.eventlistener.HqlEventListenerTest.class);
-    suite.addTestSuite(org.jbpm.test.execution.ConcurrentEndTest.class);
-    suite.addTestSuite(org.jbpm.test.execution.ExecutionEagerLoadingTest.class);
-    suite.addTestSuite(org.jbpm.test.execution.ExecutionQueryTest.class);
-    suite.addTestSuite(org.jbpm.test.execution.FindExecutionTest.class);
-    suite.addTestSuite(org.jbpm.test.execution.SignalExecutionTest.class);
-    suite.addTestSuite(org.jbpm.test.execution.StartExecutionTest.class);
-    suite.addTestSuite(org.jbpm.test.execution.SystemVariablesTest.class);
-    suite.addTestSuite(org.jbpm.test.history.AvgDurationTest.class);
-    suite.addTestSuite(org.jbpm.test.history.ChoiceDistributionTest.class);
-    suite.addTestSuite(org.jbpm.test.history.EndProcessInstanceTest.class);
-    suite.addTestSuite(org.jbpm.test.history.HistoryActivityInstanceQeuryTest.class);
-    suite.addTestSuite(org.jbpm.test.history.HistoryDetailQueryTest.class);
-    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.mgmt.JobQueryTest.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);
-    suite.addTestSuite(org.jbpm.test.process.ProcessDefinitionQueryTest.class);
-    suite.addTestSuite(org.jbpm.test.process.ProcessDefinitionStartFormTest.class);
-    suite.addTestSuite(org.jbpm.test.process.RepositoryServiceTest.class);
-    suite.addTestSuite(org.jbpm.test.task.SubTaskTest.class);
-    suite.addTestSuite(org.jbpm.test.task.TaskCommentsTest.class);
-    suite.addTestSuite(org.jbpm.test.task.TaskCreateUpdateDeleteTest.class);
-    suite.addTestSuite(org.jbpm.test.task.TaskListTest.class);
-    suite.addTestSuite(org.jbpm.test.task.TaskParticipationsTest.class);
-    suite.addTestSuite(org.jbpm.test.task.TaskPropertiesTest.class);
-    suite.addTestSuite(org.jbpm.test.task.TaskQueryCandidatesTest.class);
-    suite.addTestSuite(org.jbpm.test.task.TaskQueryProcessTest.class);
-    suite.addTestSuite(org.jbpm.test.task.TaskQueryTest.class);
-    suite.addTestSuite(org.jbpm.test.task.TaskVariablesTest.class);
-    suite.addTestSuite(org.jbpm.test.taskactivity.TaskCandidatesTest.class);
-    suite.addTestSuite(org.jbpm.test.taskactivity.TaskCompletionTest.class);
-    suite.addTestSuite(org.jbpm.test.taskactivity.TaskOutcomesTest.class);
-    suite.addTestSuite(org.jbpm.test.taskactivity.TaskReassignTest.class);
-    suite.addTestSuite(org.jbpm.test.timer.TimerTest.class);
-    suite.addTestSuite(org.jbpm.test.variables.BasicVariablesTest.class);
-    suite.addTestSuite(org.jbpm.test.variables.VariableBasicTypesTest.class);
-    return suite;
-  }
-}

Modified: jbpm4/trunk/modules/userguide/src/main/docbook/en/modules/ch02-Installation.xml
===================================================================
--- jbpm4/trunk/modules/userguide/src/main/docbook/en/modules/ch02-Installation.xml	2009-08-30 07:09:09 UTC (rev 5590)
+++ jbpm4/trunk/modules/userguide/src/main/docbook/en/modules/ch02-Installation.xml	2009-08-30 10:38:08 UTC (rev 5591)
@@ -36,20 +36,21 @@
     there. Otherwise the script will download it for you. The same is true for eclipse-jee-galileo-win32.zip 
     (or eclipse-jee-galileo-linux-gtk(-x86_64).tar.gz on Linux and eclipse-jee-galileo-macosx-carbon.tar.gz on Mac OSX)
     </para>
-    <para>Open a command prompt and go do directory <literal>${jbpm.home}/jboss</literal>.  Then 
+    <para>Open a command prompt and go do directory <literal>${jbpm.home}/install</literal>.  Then 
     run
     </para>
-    <programlisting>ant demo.setup</programlisting>
+    <programlisting>ant demo.setup.jboss</programlisting>
+    <para>or</para>
+    <programlisting>ant demo.setup.tomcat</programlisting>
     <para>That will</para>
     <itemizedlist>
       <listitem>Install JBoss into the <literal>${jbpm.home}/jboss-5.0.0.GA</literal> directory</listitem>
-      <listitem>Install jBPM into that JBoss installation.  By default, this includes a hypersonic 
-      database that is accessable over TCP/IP. 
-      </listitem>
-      <listitem>Start JBoss in the background.  This will also start the hypersonic DB.</listitem>
+      <listitem>Install jBPM into that JBoss installation.</listitem>
+      <listitem>Install hsqldb and start it in the background</listitem>
       <listitem>Create the DB Schema</listitem>
+      <listitem>Start JBoss in the background.</listitem>
       <listitem>Create an examples.bar business archive from the examples and deploy it to the jBPM DB.</listitem>
-      <listitem>Load the example users and groups from <literal>${jbpm.home}/db/example.identities.sql</literal> </listitem>
+      <listitem>Load the example users and groups from <literal>${jbpm.home}/install/src/demo/example.identities.sql</literal> </listitem>
       <listitem>Install eclipse into <literal>${jbpm.home}/eclipse</literal></listitem>
       <listitem>Start eclipse</listitem>
     </itemizedlist>
@@ -89,57 +90,42 @@
     </table>
   </section>
 
-  <section id="antscripts">
-    <title>Ant scripts</title>
-	  <para>This chapter describes how to install jBPM in different 
-	  application environments.  Currently we only have a JBoss installation, but we 
-	  soon hope to expand that to incorporate other application environments.
+  <section id="installscripts">
+    <title>Install scripts</title>
+	  <para>The jBPM download contains an <literal>install</literal> directory
+	  with an ant <link>build.xml</link> file in it.  You can use that to 
+	  install jBPM into your application environment.  
 	  </para>
 	     
-	  <para>As part of the installation, the jBPM configuration 
-	  files will be deployed to the target environment.  Those jBPM configuration 
-	  files themselves should not be changed after installation.  Instead
-	  the installation scripts take specific configuration parameters 
-	  that will build a valid configuration on the target environment.
-	  </para>
-	  
-	  <para>So it's best to stick to the installations and jBPM configuration files 
+	  <para>It's best to stick to the installations and jBPM configuration files 
 	  as done with these installation scripts.  Customizing jBPM configuration files 
 	  directly, is possible, but not supported. 
 	  </para> 
 	
-    <para>As you already saw one example in the demo setup, the distribution contains a couple of ant 
-    scripts:
+    <para>To invoke the install script, open a command line and go to the 
+    <literal>${jbpm.home}/install</literal> directory.  With <literal>ant -p</literal> you can 
+    find out what each of these scripts can do.
     </para>
-    <itemizedlist>
-      <listitem><literal>${jbpm.home}/jboss/build.xml</literal></listitem>
-      <listitem><literal>${jbpm.home}/db/build.xml</literal></listitem>
-      <listitem><literal>${jbpm.home}/gpd/build.xml</literal></listitem>
-      <listitem><literal>${jbpm.home}/examples/build.xml</literal></listitem>
-    </itemizedlist>
-    <para>With <literal>ant -p</literal> you can find out what each of these scripts can do.
+    <para>The scripts are parametrized with default values.  
     </para>
-    <para>The scripts are parametrized with default values.  Following properties you might 
-    want to customize:
+    <para>To specify your jdbc properties that are used in the DB schema generation, direct DB access like 
+    deployment and for the JBoss datasource creation, the easiest is to update the appropriate
+    properties file in directory <literal>${jbpm.home}/install/jdbc</literal>.  The appropriate properties 
+    file will be loaded by the scripts that are DB related. 
     </para>
+    <para>Also following properties you might want to customize:</para>
     <itemizedlist>
-      <listitem><literal>jbpm.home</literal> : Default value is <literal>${user.home}/jbpm-${jbpm-version}</literal>.  
-      You should set it to the location where you unzipped the distribution.</listitem>
       <listitem><literal>database</literal> : Default value is <literal>hsqldb</literal>.  Alternative values 
       are <literal>mysql</literal>, <literal>oracle</literal> and <literal>postgresql</literal></listitem>
       <listitem><literal>jboss.version</literal> : Default value is <literal>5.0.0.GA</literal>.  Alternative 
-      value is <literal>5.0.1.GA</literal></listitem>
+      value is <literal>5.1.0.GA</literal></listitem>
     </itemizedlist>
     <para>To customize the values for these properties, just use <literal>-D</literal> like this
     </para>
-    <programlisting>ant -Ddatabase=postgresql demo.setup</programlisting>
-    <para>Or specify the customized values in <literal>${user.home}/.jbpm4/build.properties</literal> 
+    <programlisting>ant -Ddatabase=postgresql demo.setup.jboss</programlisting>
+    <para>Alternativelym you can specify the customized values in 
+    <literal>${user.home}/.jbpm4/build.properties</literal> 
     </para>
-    <para>To specify your jdbc properties that are used in the DB schema generation, direct DB access like 
-    deployment and for the JBoss datasource creation, the easiest is to update the appropriate
-    properties file in directory <literal>${jbpm.home}/db/jdbc</literal>.  The appropriate properties 
-    file will be loaded by the scripts that are DB related. 
-    </para>
   </section>
 
   <section id="librarydependenciesandconfigurationfiles">
@@ -153,30 +139,51 @@
 
   <section id="jboss">
     <title>JBoss</title>
-    <para>The build file <literal>${jbpm.home}/jboss/build.xml</literal> contains scripts for 
-    installing jBPM into JBoss 5.  Navigate to that directory and run <literal>ant -p</literal>
-    for more details.
+    <para>The target <literal>install.jbpm.into.jboss</literal> will install jBPM into
+    your JBoss 5 installation.  Navigate to the install directory and run <literal>ant -p</literal>
+    for more details.  This install script will install jBPM as a JBoss-wide service so 
+    that all applications can use the same jBPM ProcessEngine. 
     </para>
+    <para>Specify property <literal>-Djboss.home=PathToYourJBossInstallation</literal> 
+    to customize the path to your JBoss installation.
+    </para>
+    <para>If you are running on a JDK 6, you can also call the installation target 
+    <literal>install.signavio.into.jboss</literal>, which will install the 
+    web based process modeller into JBoss.
+    </para>
     <para>In JBoss, the <literal>ProcessEngine</literal> can be obtained from JNDI 
     with <literal>new InitialContext().lookup(&quot;java:/ProcessEngine&quot;)</literal>
+    The same ProcessEngine can be obtained with <literal>Configuration.getProcessEngine()</literal>
     </para>
   </section>
 
   <section id="tomcat">
     <title>Tomcat</title>
-    <para>ETA for Tomcat is 4.1: <ulink url="https://jira.jboss.org/jira/browse/JBPM-2397">See JBPM-2397</ulink></para>
+    <para>The target <literal>install.jbpm.into.tomcat</literal> will install jBPM into
+    your JBoss 5 installation.
+    </para>
   </section>
 
+  <section id="userwebapp">
+    <title>User webapp</title>
+    <para>If you want to deploy jBPM as a part of your web application, use the
+    install target <literal>create.user.webapp</literal>.  That will 
+    create a web application with jBPM in it, in the location <literal>${jbpm.home}/install/generated/user-webapp</literal>.  
+    </para>
+    <para>In case you deploy your app on JBoss or another appserver that has the 
+    jta.jar classes, then you need to delete the <literal>${jbpm.home}/install/generated/user-webapp/WEB-INF/lib/jta.jar</literal> 
+    </para>
+  </section>
+
   <section id="database">
     <title>Database</title>
-    <para>The build file <literal>${jbpm.home}/db/build.xml</literal> contains scripts for 
-    DB operations like creating and dropping the schema.  Navigate to that directory and run <literal>ant -p</literal>
-    for more details.
+    <para>The install script also contains scripts for 
+    DB operations like creating and dropping the schema.  
     </para>
     <para>To create the schema in your database:</para>
     <itemizedlist>
-      <listitem>First, update the properties file of your database in <literal>${jbpm.home}/db/jdbc</literal></listitem>
-      <listitem>Then run target <literal>ant create.jbpm.schema</literal> in the db directory</listitem>
+      <listitem>First, update the properties file of your database in <literal>${jbpm.home}/install/jdbc</literal></listitem>
+      <listitem>Then run target <literal>ant create.jbpm.schema</literal> in the <literal>${jbpm.home}/install</literal> directory</listitem>
     </itemizedlist>
   </section>
 

Modified: jbpm4/trunk/qa/build.xml
===================================================================
--- jbpm4/trunk/qa/build.xml	2009-08-30 07:09:09 UTC (rev 5590)
+++ jbpm4/trunk/qa/build.xml	2009-08-30 10:38:08 UTC (rev 5591)
@@ -60,6 +60,8 @@
   	      depends="reinstall.jbpm"> 
     <ant antfile="${jbpm.home}/install/build.xml" target="reinstall.tomcat" />
     <ant antfile="${jbpm.home}/install/build.xml" target="create.user.webapp" />
+    <ant antfile="${jbpm.home}/install/build.xml" target="internal.install.and.start.hsqldb.if.needed" />
+    <ant antfile="${jbpm.home}/install/build.xml" target="create.jbpm.schema" />
 
   	<!-- to build the jbpm test webapp we start by copying the user webapp -->
   	<mkdir dir="${tomcat.home}/webapps/jbpm-test-webapp" />
@@ -90,8 +92,9 @@
 
   <!-- TOMCAT TEARDOWN -->
   <target name="testsuite.tomcat.teardown">
-    <!-- stop tomcat -->
     <ant antfile="${jbpm.home}/install/build.xml" target="stop.tomcat" />
+    <ant antfile="${jbpm.home}/install/build.xml" target="drop.jbpm.schema" />
+    <ant antfile="${jbpm.home}/install/build.xml" target="internal.stop.hsqldb.server.if.needed" />
 	</target>
 
   <!-- JBOSS SETUP -->
@@ -102,6 +105,9 @@
     <ant antfile="${jbpm.home}/install/build.xml" target="install.jbpm.into.jboss" />
     <ant antfile="${jbpm.home}/install/build.xml" target="create.user.webapp" />
 
+		<ant antfile="${jbpm.home}/install/build.xml" target="internal.install.and.start.hsqldb.if.needed" />
+    <ant antfile="${jbpm.home}/install/build.xml" target="create.jbpm.schema" />
+
     <ant antfile="${jbpm.home}/examples/build.xml" target="examples.jar" />
      <mkdir dir="${jboss.server.config.dir}/deploy/jbpm/userlibs" />
      <copy file="${jbpm.home}/examples/target/examples.jar"
@@ -141,16 +147,14 @@
 
     <!-- start jboss -->
     <ant antfile="${jbpm.home}/install/build.xml" target="start.jboss" />
-
-		<!-- create db schema -->
-    <ant antfile="${jbpm.home}/install/build.xml" target="create.jbpm.schema" />
   </target>
 
   <!-- JBOSS TEARDOWN -->
   <target name="testsuite.jboss.teardown"
             description="drops the jbpm schema and stops jboss">
+    <ant antfile="${jbpm.home}/install/build.xml" target="stop.jboss" />
     <ant antfile="${jbpm.home}/install/build.xml" target="drop.jbpm.schema" />
-    <ant antfile="${jbpm.home}/install/build.xml" target="stop.jboss" />
+    <ant antfile="${jbpm.home}/install/build.xml" target="internal.stop.hsqldb.server.if.needed" />
   </target>
 
   <!-- ############################################ -->



More information about the jbpm-commits mailing list