<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<body link="#355491" alink="#4262a1" vlink="#355491" style="background: #e2e2e2; margin: 0; padding: 20px;">
<div>
        <table cellpadding="0" bgcolor="#FFFFFF" border="0" cellspacing="0" style="border: 1px solid #dadada; margin-bottom: 30px; width: 100%; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
                <tbody>
                        <tr>
                                <td>
                                        <table border="0" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF" style="border: solid 2px #ccc; background: #dadada; width: 100%; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
                                                <tbody>
                                                        <tr>
                                                                <td bgcolor="#000000" valign="middle" height="58px" style="border-bottom: 1px solid #ccc; padding: 20px; -moz-border-radius-topleft: 3px; -moz-border-radius-topright: 3px; -webkit-border-top-right-radius: 5px; -webkit-border-top-left-radius: 5px;">
                                                                        <h1 style="color: #333333; font: bold 22px Arial, Helvetica, sans-serif; margin: 0; display: block !important;">
                                                                        <!-- To have a header image/logo replace the name below with your img tag -->
                                                                        <!-- Email clients will render the images when the message is read so any image -->
                                                                        <!-- must be made available on a public server, so that all recipients can load the image. -->
                                                                        <a href="http://community.jboss.org/index.jspa" style="text-decoration: none; color: #E1E1E1">JBoss Community</a></h1>
                                                                </td>
                                                        </tr>
                                                        <tr>
                                                                <td bgcolor="#FFFFFF" style="font: normal 12px Arial, Helvetica, sans-serif; color:#333333; padding: 20px; -moz-border-radius-bottomleft: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 5px; -webkit-border-bottom-left-radius: 5px;"><h3 style="margin: 10px 0 5px; font-size: 17px; font-weight: normal;">
jBPM3 Building the Installer
</h3>
<span style="margin-bottom: 10px;">
modified by <a href="http://community.jboss.org/people/admin">Administrator Administrator</a> in <i>jBPM</i> - <a href="http://community.jboss.org/docs/DOC-12866">View the full document</a>
</span>
<hr style="margin: 20px 0; border: none; background-color: #dadada; height: 1px;">
<div class="jive-rendered-content"><p>jBPM uses the <a class="jive-link-external-small" href="http://izpack.org/">IzPack</a> installer for deployment on supported target containers.</p><h3>Build the Installer</h3><p>The default settings for supported databases and containers are provided in a <a class="jive-link-external-small" href="http://maven.apache.org/guides/introduction/introduction-to-profiles.html">Maven profile descriptor</a>. To setup the profile you can either copy the <tt>profiles.example.xml</tt> provided in the project base directory to <tt>profiles.xml</tt> and edit it the properties accordingly. Alternatively, you can define this profile in your <tt>settings.xml</tt> file.</p><pre class="jive-pre"><code class="jive-code jive-xml"><span class="jive-xml-tag"><?xml version="1.0"?></span>
<span class="jive-xml-tag"><span><profilesXml xmlns="</span><a class="jive-link-external-small" href="http://maven.apache.org/PROFILES/1.0.0" target="_blank">http://maven.apache.org/PROFILES/1.0.0</a><span>"
  xmlns:xsi="</span><a class="jive-link-external-small" href="http://www.w3.org/2001/XMLSchema-instance" target="_blank">http://www.w3.org/2001/XMLSchema-instance</a><span>"
  xsi:schemaLocation="</span><a class="jive-link-external-small" href="http://maven.apache.org/PROFILES/1.0.0" target="_blank">http://maven.apache.org/PROFILES/1.0.0</a><span> </span><a class="jive-link-external-small" href="http://maven.apache.org/xsd/profiles-1.0.0.xsd" target="_blank">http://maven.apache.org/xsd/profiles-1.0.0.xsd</a><span>"></span></span>
  <span class="jive-xml-tag"><profiles></span>
    <span class="jive-xml-comment"><!-- This profile can also be defined in ~/.m2/settings.xml --></span>
    <span class="jive-xml-tag"><profile></span>
      <span class="jive-xml-tag"><id></span>dev-local<span class="jive-xml-tag"></id></span>
      <span class="jive-xml-tag"><properties></span>
        <span class="jive-xml-tag"><jdbc.db2.server></span>localhost<span class="jive-xml-tag"></jdbc.db2.server></span>
        <span class="jive-xml-tag"><jdbc.db2.port></span>50000<span class="jive-xml-tag"></jdbc.db2.port></span>
        <span class="jive-xml-tag"><jdbc.db2.database></span>jbpm3<span class="jive-xml-tag"></jdbc.db2.database></span>
        <span class="jive-xml-tag"><jdbc.db2.url></span>jdbc:db2://${jdbc.db2.server}:${jdbc.db2.port}/${jdbc.db2.database}<span class="jive-xml-tag"></jdbc.db2.url></span>
        <span class="jive-xml-tag"><jdbc.db2.username></span>jbpm3<span class="jive-xml-tag"></jdbc.db2.username></span>
        <span class="jive-xml-tag"><jdbc.db2.password></span>jbpm3<span class="jive-xml-tag"></jdbc.db2.password></span>
        <span class="jive-xml-tag"><jdbc.db2.driver></span>com.ibm.db2.jcc.DB2Driver<span class="jive-xml-tag"></jdbc.db2.driver></span>
        <span class="jive-xml-tag"><jdbc.mssql.server></span>dev30.qa.atl.jboss.com<span class="jive-xml-tag"></jdbc.mssql.server></span>
        <span class="jive-xml-tag"><jdbc.mssql.port></span>3918<span class="jive-xml-tag"></jdbc.mssql.port></span>
        <span class="jive-xml-tag"><jdbc.mssql.database></span>jbpm<span class="jive-xml-tag"></jdbc.mssql.database></span>
        <span class="jive-xml-tag"><jdbc.mssql.url></span>jdbc:sqlserver://${jdbc.mssql.server}:${jdbc.mssql.port};databaseName=${jdbc.mssql.database}<span class="jive-xml-tag"></jdbc.mssql.url></span>
        <span class="jive-xml-tag"><jdbc.mssql.username></span>jbpm<span class="jive-xml-tag"></jdbc.mssql.username></span>
        <span class="jive-xml-tag"><jdbc.mssql.password></span>jbpm<span class="jive-xml-tag"></jdbc.mssql.password></span>
        <span class="jive-xml-tag"><jdbc.mssql.driver></span>com.microsoft.sqlserver.jdbc.SQLServerDriver<span class="jive-xml-tag"></jdbc.mssql.driver></span>
        <span class="jive-xml-tag"><jdbc.mysql.server></span>localhost<span class="jive-xml-tag"></jdbc.mysql.server></span>
        <span class="jive-xml-tag"><jdbc.mysql.port></span>3306<span class="jive-xml-tag"></jdbc.mysql.port></span>
        <span class="jive-xml-tag"><jdbc.mysql.database></span>jbpm3<span class="jive-xml-tag"></jdbc.mysql.database></span>
        <span class="jive-xml-tag"><jdbc.mysql.url></span>jdbc:mysql://${jdbc.mysql.server}:${jdbc.mysql.port}/${jdbc.mysql.database}<span class="jive-xml-tag"></jdbc.mysql.url></span>
        <span class="jive-xml-tag"><jdbc.mysql.username></span>jbpm3<span class="jive-xml-tag"></jdbc.mysql.username></span>
        <span class="jive-xml-tag"><jdbc.mysql.password></span>jbpm3<span class="jive-xml-tag"></jdbc.mysql.password></span>
        <span class="jive-xml-tag"><jdbc.mysql.driver></span>com.mysql.jdbc.Driver<span class="jive-xml-tag"></jdbc.mysql.driver></span>
        <span class="jive-xml-tag"><jdbc.oracle.server></span>localhost<span class="jive-xml-tag"></jdbc.oracle.server></span>
        <span class="jive-xml-tag"><jdbc.oracle.port></span>1521<span class="jive-xml-tag"></jdbc.oracle.port></span>
        <span class="jive-xml-tag"><jdbc.oracle.database></span>XE<span class="jive-xml-tag"></jdbc.oracle.database></span>
        <span class="jive-xml-tag"><jdbc.oracle.url></span>jdbc:oracle:thin:@${jdbc.oracle.server}:${jdbc.oracle.port}:${jdbc.oracle.database}<span class="jive-xml-tag"></jdbc.oracle.url></span>
        <span class="jive-xml-tag"><jdbc.oracle.username></span>jbpm3<span class="jive-xml-tag"></jdbc.oracle.username></span>
        <span class="jive-xml-tag"><jdbc.oracle.password></span>jbpm3<span class="jive-xml-tag"></jdbc.oracle.password></span>
        <span class="jive-xml-tag"><jdbc.oracle.driver></span>oracle.jdbc.driver.OracleDriver<span class="jive-xml-tag"></jdbc.oracle.driver></span>
        <span class="jive-xml-tag"><jdbc.postgresql.server></span>localhost<span class="jive-xml-tag"></jdbc.postgresql.server></span>
        <span class="jive-xml-tag"><jdbc.postgresql.port></span>5432<span class="jive-xml-tag"></jdbc.postgresql.port></span>
        <span class="jive-xml-tag"><jdbc.postgresql.database></span>jbpm3<span class="jive-xml-tag"></jdbc.postgresql.database></span>
        <span class="jive-xml-tag"><jdbc.postgresql.url></span>jdbc:postgresql://${jdbc.postgresql.server}:${jdbc.postgresql.port}/${jdbc.postgresql.database}<span class="jive-xml-tag"></jdbc.postgresql.url></span>
        <span class="jive-xml-tag"><jdbc.postgresql.username></span>jbpm3<span class="jive-xml-tag"></jdbc.postgresql.username></span>
        <span class="jive-xml-tag"><jdbc.postgresql.password></span>jbpm3<span class="jive-xml-tag"></jdbc.postgresql.password></span>
        <span class="jive-xml-tag"><jdbc.postgresql.driver></span>org.postgresql.Driver<span class="jive-xml-tag"></jdbc.postgresql.driver></span>
        <span class="jive-xml-tag"><jdbc.sybase.server></span>localhost<span class="jive-xml-tag"></jdbc.sybase.server></span>
        <span class="jive-xml-tag"><jdbc.sybase.port></span>5000<span class="jive-xml-tag"></jdbc.sybase.port></span>
        <span class="jive-xml-tag"><jdbc.sybase.database></span>jbpm3<span class="jive-xml-tag"></jdbc.sybase.database></span>
        <span class="jive-xml-tag"><jdbc.sybase.url></span>jdbc:sybase:Tds:${jdbc.sybase.server}:${jdbc.sybase.port}/${jdbc.sybase.database}<span class="jive-xml-tag"></jdbc.sybase.url></span>
        <span class="jive-xml-tag"><jdbc.sybase.username></span>jbpm3<span class="jive-xml-tag"></jdbc.sybase.username></span>
        <span class="jive-xml-tag"><jdbc.sybase.password></span>jbpm3jbpm3<span class="jive-xml-tag"></jdbc.sybase.password></span>
        <span class="jive-xml-tag"><jdbc.sybase.driver></span>com.sybase.jdbc3.jdbc.SybDriver<span class="jive-xml-tag"></jdbc.sybase.driver></span>
        <span class="jive-xml-tag"><jdbc.sybase.datasource></span>com.sybase.jdbc3.jdbc.SybXADataSource<span class="jive-xml-tag"></jdbc.sybase.datasource></span>
        <span class="jive-xml-tag"><jboss405.home></span>$USER_HOME/jboss-4.0.5.GA<span class="jive-xml-tag"></jboss405.home></span>
        <span class="jive-xml-tag"><jboss423.home></span>$USER_HOME/jboss-4.2.3.GA<span class="jive-xml-tag"></jboss423.home></span>
        <span class="jive-xml-tag"><jboss501.home></span>$USER_HOME/jboss-5.0.1.GA<span class="jive-xml-tag"></jboss501.home></span>
        <span class="jive-xml-tag"><jboss510.home></span>$USER_HOME/jboss-5.1.0.GA<span class="jive-xml-tag"></jboss510.home></span>
        <span class="jive-xml-tag"><jboss.server></span>all<span class="jive-xml-tag"></jboss.server></span>
        <span class="jive-xml-tag"><jbpm.home></span>$USER_HOME/jbpm-${project.version}<span class="jive-xml-tag"></jbpm.home></span>
      <span class="jive-xml-tag"></properties></span>
    <span class="jive-xml-tag"></profile></span>
  <span class="jive-xml-tag"></profiles></span>
  <span class="jive-xml-tag"><activeProfiles></span>
    <span class="jive-xml-tag"><activeProfile></span>dev-local<span class="jive-xml-tag"></activeProfile></span>
  <span class="jive-xml-tag"></activeProfiles></span>
<span class="jive-xml-tag"></profilesXml></span></code></pre><p>Once you have configured the properties,  you can proceed to build the binary distribution.</p><pre class="jive-pre"><code class="jive-code">[aguizar@siankaan jbpm-3.2-soa]$ mvn -Pdistro clean install
...
[INFO] Installing /home/aguizar/jbpm/jbpm3/branches/jbpm-3.2-soa/modules/distribution/target/jbpm-installer-3.2.10-SNAPSHOT.jar to /home/aguizar/.m2/repository/org/jbpm/jbpm3/jbpm-distribution/3.2.10-SNAPSHOT/jbpm-distribution-3.2.10-SNAPSHOT-installer.jar
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO] ------------------------------------------------------------------------
[INFO] JBoss jBPM3 ........................................... SUCCESS [7.423s]
[INFO] JBoss jBPM3 - Core .................................... SUCCESS [45.132s]
[INFO] JBoss jBPM3 - Identity ................................ SUCCESS [6.501s]
[INFO] JBoss jBPM3 - Enterprise .............................. SUCCESS [8.366s]
[INFO] JBoss jBPM3 - Examples ................................ SUCCESS [3.152s]
[INFO] JBoss jBPM3 - Simulation .............................. SUCCESS [10.477s]
[INFO] JBoss jBPM3 - Database ................................ SUCCESS [17.333s]
[INFO] JBoss jBPM3 - Userguide ............................... SUCCESS [17.634s]
[INFO] JBoss jBPM3 - Distribution ............................ SUCCESS [24.497s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESSFUL
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2 minutes 22 seconds
[INFO] Finished at: Thu Jul 29 11:07:44 CDT 2010
[INFO] Final Memory: 105M/194M
</code></pre><h3>Run the Installer</h3><p>To install jBPM, run the generated installer.</p><pre class="jive-pre"><code class="jive-code">java -jar modules/distribution/target/jbpm-installer-3.2.10-SNAPSHOT.jar
</code></pre><p>Follow the instructions on the installer panels.</p><p><a href="http://www.jboss.org/community/servlet/JiveServlet/downloadImage/1061/jBPMInstaller1.png"><span> http://www.jboss.org/community/servlet/JiveServlet/downloadImage/1061/jBPMInstaller1.png </span></a></p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p><a href="http://www.jboss.org/community/servlet/JiveServlet/downloadImage/1062/jBPMInstaller2.png"><span> http://www.jboss.org/community/servlet/JiveServlet/downloadImage/1062/jBPMInstaller2.png </span></a></p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p><a href="http://www.jboss.org/community/servlet/JiveServlet/downloadImage/1063/jBPMInstaller3.png"><span> http://www.jboss.org/community/servlet/JiveServlet/downloadImage/1063/jBPMInstaller3.png </span></a></p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p><a href="http://www.jboss.org/community/servlet/JiveServlet/downloadImage/1064/jBPMInstaller4.png"><span> http://www.jboss.org/community/servlet/JiveServlet/downloadImage/1064/jBPMInstaller4.png </span></a></p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p><a href="http://www.jboss.org/community/servlet/JiveServlet/downloadImage/1066/jBPMInstaller5.png"><span> http://www.jboss.org/community/servlet/JiveServlet/downloadImage/1066/jBPMInstaller5.png </span></a></p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p><a href="http://www.jboss.org/community/servlet/JiveServlet/downloadImage/1067/jBPMInstaller6.png"><span> http://www.jboss.org/community/servlet/JiveServlet/downloadImage/1067/jBPMInstaller6.png </span></a></p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p><a href="http://community.jboss.org/servlet/JiveServlet/showImage/102-12866-9-1068/jBPMInstaller7.png"><span> http://community.jboss.org/servlet/JiveServlet/downloadImage/102-12866-9-1068/450-330/jBPMInstaller7.png </span></a></p><h2>Modifying the Installation Packs</h2><p><em>Note: this information is outdated.</em></p><p>The installer build uses the <a class="jive-link-external-small" href="http://maven.apache.org/plugins/maven-assembly-plugin">maven-assembly-plugin</a> to collect all the dependencies in the <tt>target/deploy-artifacts</tt> directory. This directory is the source of everything that gets distributed with the installer. If an artifact is not in <tt>target/deploy-artifacts</tt> it cannot go into the installer. Have a look at <tt>scripts/assembly-deploy-artifacts.xml</tt> for the assembly plugin descriptor.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p>The IzPack compiler is run from the <a class="jive-link-external-small" href="http://maven.apache.org/plugins/maven-antrun-plugin">maven-antrun-plugin</a>. Have a look at <tt>scripts/antrun-installer.xml</tt> for details.</p><p>The install packs themselves are defined in <tt>resources/installer/install-definitions.xml</tt>. The standalone pack is quite intuitively defined like this.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><pre class="jive-pre"><code class="jive-code jive-xml">    <span class="jive-xml-comment"><!-- jBPM3 Standalone -->
    <span class="jive-xml-tag"><pack name="jBPM3 Standalone" required="yes" preselected="yes"></span>
      <span class="jive-xml-tag"><description></span>The jBPM3 Standalone Components<span class="jive-xml-tag"></description></span>
     
      <!-- jbpm3/config -->
      <span class="jive-xml-tag"><file src="@{deploy.artifacts.dir}/lib/jbpm-core-config.zip" targetdir="$INSTALL_PATH/jbpm3/config"
        unpack="true" override="true" /></span>
     
      <!-- jbpm3/docs -->
      <span class="jive-xml-tag"><file src="@{deploy.artifacts.dir}/lib/jbpm-userguide.zip" targetdir="$INSTALL_PATH/jbpm3/docs/userguide"
        unpack="true" override="true" /></span>
       
      <!-- jbpm3/lib -->
      <span class="jive-xml-tag"><fileset dir="@{deploy.artifacts.dir}/lib" targetdir="$INSTALL_PATH/jbpm3/lib" override="true"></span>
        <span class="jive-xml-tag"><include name="jbpm-enterprise.jar" /></span>
        <span class="jive-xml-tag"><include name="jbpm-core.jar" /></span>
        <span class="jive-xml-tag"><include name="jbpm-identity.jar" /></span>
       
        <span class="jive-xml-tag"><include name="activation.jar" /></span>
        <span class="jive-xml-tag"><include name="antlr.jar" /></span>
        <span class="jive-xml-tag"><include name="asm.jar" /></span>
        <span class="jive-xml-tag"><include name="bsh.jar" /></span>
        <span class="jive-xml-tag"><include name="cglib.jar" /></span>
        <span class="jive-xml-tag"><include name="commons-collections.jar" /></span>
        <span class="jive-xml-tag"><include name="commons-logging.jar" /></span>
        <span class="jive-xml-tag"><include name="dom4j.jar" /></span>
        <span class="jive-xml-tag"><include name="hibernate.jar" /></span>
        <span class="jive-xml-tag"><include name="hsqldb.jar" /></span>
      <span class="jive-xml-tag"></fileset></span>
     
      <!-- jbpm3/src --></span>
      <span class="jive-xml-tag"><fileset dir="@{deploy.artifacts.dir}/src" targetdir="$INSTALL_PATH/jbpm3/src" override="true"></span>
        <span class="jive-xml-tag"><include name="jbpm-core-sources.jar" /></span>
        <span class="jive-xml-tag"><include name="jbpm-identity-sources.jar" /></span>
      <span class="jive-xml-tag"></fileset></span>
    <span class="jive-xml-tag"></pack></span>
</code></pre></div>
<div style="background-color: #f4f4f4; padding: 10px; margin-top: 20px;">
<p style="margin: 0;">Comment by <a href="http://community.jboss.org/docs/DOC-12866">going to Community</a></p>
        <p style="margin: 0;">Create a new document in jBPM at <a href="http://community.jboss.org/choose-container!input.jspa?contentType=102&containerType=14&container=2034">Community</a></p>
</div></td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
</div>
</body>
</html>