Continuum on JBoss

Continuum 1.1-SNAPSHOT on JBoss 4.0

These instructions explain how to deploy the (unreleased) Continuum 1.1-SNAPSHOT web application in an existing installation of JBoss 4.0.x.  These instructions were developed using JBoss 4.0.5.GA.

These instructions are written using the JBoss configuration default.  If using a different configuration, modify accordingly. 

1. Copy the derby jar derby-10.1.3.1.jar into $JBOSS_HOME/server/default/lib.

This jar can be found in continuum-webapp/target/continuum-webapp-1.1-SNAPSHOT/WEB-INF/lib if you have built continuum from source, otherwise it may be downloaded from http://mirrors.ibiblio.org/pub/mirrors/maven2/org/apache/derby/derby/derby-10.1.3.1/derby-10.1.3.1.jar

2. Create a jdbc deployment configuration file named derby-continuum-ds.xml in $JBOSS_HOME/server/default/deploy with the following contents:

<?xml version="1.0" encoding="UTF-8"?>
<datasources>
  <local-tx-datasource>
     <!-- The jndi name of the DataSource, it is prefixed with java:/ -->
     <!-- Datasources are not available outside the virtual machine -->
     <jndi-name>continuum</jndi-name>
     <!-- for in-process persistent db, saved when jboss stops. The
     org.jboss.jdbc.DerbyDatabase mbean is necessary for properly db shutdown -->
     <connection-url>jdbc:derby:database/continuum;create=true</connection-url>
     <!-- The driver class -->
     <driver-class>org.apache.derby.jdbc.EmbeddedDriver</driver-class>
     <!-- The login and password -->
     <user-name>sa</user-name>
     <password></password>
     <!-- The minimum connections in a pool/sub-pool. Pools are lazily constructed on first use -->
     <min-pool-size>5</min-pool-size>
     <!-- The maximum connections in a pool/sub-pool -->
     <max-pool-size>20</max-pool-size>
     <!-- The time before an unused connection is destroyed -->
     <idle-timeout-minutes>5</idle-timeout-minutes>
     <!-- Whether to check all statements are closed when the connection is returned to the pool,
          this is a debugging feature that should be turned off in production -->
     <track-statements/>
  </local-tx-datasource>
</datasources>

3.  Create a jdbc deployment configuration file named derby-users-ds.xml in $JBOSS_HOME/server/default/deploy with the following contents:

<?xml version="1.0" encoding="UTF-8"?>
<datasources>
  <local-tx-datasource>
     <!-- The jndi name of the DataSource, it is prefixed with java:/ -->
     <!-- Datasources are not available outside the virtual machine -->
     <jndi-name>users</jndi-name>
     <!-- for in-process persistent db, saved when jboss stops. The
     org.jboss.jdbc.DerbyDatabase mbean is necessary for properly db shutdown -->
     <connection-url>jdbc:derby:database/users;create=true</connection-url>
     <!-- The driver class -->
     <driver-class>org.apache.derby.jdbc.EmbeddedDriver</driver-class>
     <!-- The login and password -->
     <user-name>sa</user-name>
     <password></password>
     <!-- The minimum connections in a pool/sub-pool. Pools are lazily constructed on first use -->
     <min-pool-size>5</min-pool-size>
     <!-- The maximum connections in a pool/sub-pool -->
     <max-pool-size>20</max-pool-size>
     <!-- The time before an unused connection is destroyed -->
     <idle-timeout-minutes>5</idle-timeout-minutes>
     <!-- Whether to check all statements are closed when the connection is returned to the pool,
          this is a debugging feature that should be turned off in production -->
     <track-statements/>
  </local-tx-datasource>
</datasources>

4. Check out Continuum sources from http://maven.apache.org/continuum/source-repository.html

5.  Apply the jboss patch found in http://jira.codehaus.org/browse/CONTINUUM-1167. (applied in Continuum 1.1-beta-3)

6.  Build Continuum as described in  http://maven.apache.org/continuum/guides/development/guide-build-continuum.html

7. Copy the continuum-webapp-1.1-SNAPSHOT.war file found in continuum-webapp/target directory to $JBOSS_HOME/server/default/deploy/continuum.war.

If you built Continuum from source, it will be in continuum-webapp/target.  Note the name change since JBoss uses the name of the war file as the context root.

Some other hints...

 1.  If you are getting the error...ERROR: invalid console appender config detected, console stream is looping

try adding the following parameter to your JBoss startup... -Dorg.jboss.logging.Log4jService.catchSystemOut=false
2.  If you are getting the error...java.lang.NoSuchMethodError:
org.apache.commons.collections.IteratorUtils.emptyIterator()Lorg/apache/commons/collections/ResettableIterator;

try copying commons-collections-3.0.jar into $JBOSS_HOME/server/default/lib.  JBoss 4.0.5 contains a commons-collections.jar in that directory which (according to the manifest) is version 3.1.  JBoss 4.0.1 seems to contain a version of commons-collections.jar which is before 3.0.  There is no information yet as to which version of JBoss upgraded the version of commons-collections.

Thanks To...


The following web site:

Labels

 
(None)
  1. Oct 15, 2007

    Ramakrishna says:

    \\
  2. Sep 29, 2007

    Emmanuel Venisse says:

    It'd be better to send message on the users list so we'll can answer.

    It'd be better to send message on the users list so we'll can answer.