Installation‎ > ‎

Build OpenI from Source

You will probably want to create your own build of OpenI from the source code -- mostly just for the fun of it, or sometimes it becomes a necessary evil if you want to manipulate the jars included with OpenI's WAR, or if you make some customizations either in the code or in any of the J2EE server-specific configuration files. OpenI works with any web container supporting Java Servlet 2.4 specs. However, each servlet container provides a unique set of jars in their jar library by default. You should not include any jars in OpenI's WAR that are already provided by the container in order to avoid version conflicts and ambiguity. For example, JBoss 4.2.2.GA provides JSF library jars by default, so the openi.war you deploy on JBoss 4.2.2 should not contain these JSF library jars (in fact, the JBoss-specific distro we have created, openi-2.0-alpha-jboss.zip, specifically excludes these jars).

Here are the steps to build OpenI from source:
  • You will need Apache Ant and JDK version 1.5 or greater. You also need a command-line version of Subversion client tool installed (download it from http://subversion.tigris.org/ and make sure binary executable path is set in environmental variable).
  • Checkout source sf.net svn repository into an empty folder:
  • svn checkout https://openi.svn.sourceforge.net/svnroot/openi/openi_2_0/trunk
  • Compile OpenI using Ant from command-line interface to produce openi.war,
    • cd build
    • To build a WAR to deploy on Tomcat
      • ant clean
      • ant dist.tomcat to produce WAR file compatible on Tomcat 5.5.26 and 6.0.x
    • To build a WAR to deploy on JBoss (or any other J2EE servers)
      • ant clean
      • ant dist.jboss (this produces WAR file compatible on JBoss 4.2.2/4.3.0/5.0.0 GA and this uses JBoss' authentication technique for user authentication)
    • There also exists a special set of build instructions to create a WAR for JBoss that includes security definitions to use the hsqldb database contained within JBoss as the security database (more on this configuration is here)
    • ant dist.jboss.security (this produces WAR file compatible on JBoss 4.2.2/4.3.0/5.0.0 GA and uses hsqldb database contained within JBoss for user authentication)
    • This produces an openi.war file under a dist folder for J2EE web deployment
  • Now, follow the steps in "Quick Start" section to set up your environment and deploy the OpenI web application.
Comments