Installation

These steps will quickly get JumpStart 4.2.n running and editable.

  1. Unzip. Unzip the downloaded file, which will give you a directory called jumpstart-4.2.0 or similar.
  2. Get Jetty. This will be your web server during development.
    • Go to Jetty Downloads and choose to download jetty-5.1.14.tgz.
    • Once downloaded, unzip it. Move it to a suitable location (eg. /devel/jetty-5.1.14).
  3. Get JettyLauncher. This allows Eclipse to run and restart Jetty easily.
    • Open the Eclipse update facility (Help > Software Updates > Find and install...).
    • Choose Search for new features to install and click Next.
    • Click New Remote Site.... Set Name to JettyLancher. Set URL to http://jettylauncher.sourceforge.net/updates/. Click OK.
    • Click Finish. JettyLauncher will be installed.
  4. Get OpenEJB. This will be your embedded EJB container during development.
    • Go to OpenEJB Downloads and choose to download openejb-3.1.zip.
    • Once downloaded, unzip it. Move it to a suitable location (eg. /devel/openejb-3.1).
    • In Eclipse, choose Window > Preferences > Java > Build Path > User Libraries (or in OS X, choose Eclipse > Preferences > Java > Build Path > User Libraries), and
    • create a new user library called openejb-3.1-lib, then
    • add every JAR in OpenEJB's lib/ directory to the new user library.
  5. Move JumpStart to your development projects location. Move jumpstart-4.2.0/ (or similar name) to your development area, eg. /devel/jumpstart-4.2.0/ . DO NOT choose a directory whose path contains any spaces, eg. do not use a directory whose path includes C:/Documents and Settings/.
  6. Open it in Eclipse. Open Eclipse, choose File > New > Java Project, then choose Create project from existing source and set the Directory to your jumpstart directory eg. /devel/jumpstart-4.0.0/. The project can't build just yet so it will show errors.
  7. Ensure Eclipse is using Java 5.0. Right-click on the project and choose Properties then Java Compiler and ensure Compiler compliance level is 5.0. You may have to turn on Enable project specific settings.
  8. Run the get-dependent-files target in the project's build.xml file. You can do it in Eclipse with these steps...
    • Open the Ant view and drag build.xml onto it.
    • If your internet connection is through a proxy then modify the setproxy tag in build.xml, eg.
        <setproxy proxyhost="proxy.mycompany.com" proxyport="8080"></setproxy>
      This may also be necessary in business/build.xml and web/build.xml.
    • Run the get-dependent-files target in the project's build.xml file. If it has problems due to the maven repository being slow or inaccessible, open the project's build.properties and choose a different maven.repo.root, then try running the target again.
    It will populate these directories with fresh JARs:
    	business/src/main/lib-compile/
    	                 /lib-provided/
    	                 /lib-runtime/
    	                 /lib-runtime-openejb/
    	            /test/lib-test/
    	web/src/main/lib-compile/
    	            /lib-provided/
    	
  9. Refresh the project by right-clicking on the project in Eclipse and choosing Refresh. This should build the project successfully and show no errors. It will also run exploder.xml, which will build the exploded/ directory. You can see how has this been configured by displaying the project's properties and choosing Builders.
  10. Set exploded directory to derived by right-clicking on it in Eclipse, choosing Properties, and ticking the derived checkbox. Then click OK.
  11. Overwrite the database. OpenEJB will use its own Hypersonic database (HSQLDB) by default. We will overwrite its contents. In Eclipse...
    • Open the data_util.properties file and modify the hsqldb.jar.dir and hsqldb.data.dir properties. Use relative paths eg. ../openejb-3.1/lib .
    • Run the reset-database-hsqldb target in the project's build.xml file. It will prompt you to confirm. It will then replace the database contents in OpenEJB.
  12. Configure and Start Jetty. In Eclipse...
    • Choose Run > Open Run Dialog.... The Run window will appear.
    • Right-click on Jetty Web and choose New.
    • Set the variables to values similar to those shown in the diagram on the left.
      NCSA logging is logging of the URLs received by Jetty. It is optional.
    • Click on the Arguments tab.
    • Set the VM arguments to the following, replacing the value of openejb.home with yours, eg.:
      -Dtapestry.production-mode=false
      -Dtapestry.compress-whitespace=false
      -Dopenejb.home=../openejb-3.1
      -Dhibernate.hbm2ddl.auto=update
    • These properties are explained here: tapestry, openejb, hibernate.
    • Click on the Classpath tab.


    1. Remove the (default classpath) entry. The last entry will be the project name followed by (default classpath). Remove the entry.
    2. Click on User Entries.
    3. Add conf from business dev. Choose Advanced... > Add Folders, then from your project choose business/src/dev/conf/.
    4. Add jumpstart.jar from exploded. Choose Advanced... > Add Folders, then from your project choose exploded/jumpstart.ear/jumpstart.jar/.
    5. Add JARs from libs. Choose Add JARs..., open your project, then choose every "compile", "runtime" and "test" JAR:
    6. Add OpenEJB from user libraries. Choose Advanced... > Add Library > User Library, then select your openejb-3.1-lib library.
    7. Move conf and jumpstart.jar to the top. Otherwise there will be problems (eg. log4j.properties is in conf and bsf.jar).
    • Click Run.
  13. Check JumpStart is running by pointing your web browser at http://localhost:8080/jumpstart.
  14. Confirm you can log in by going to http://localhost:8080/jumpstart/theapp/login and logging in with secofr for the Login ID and secofr for the Password.
  15. Finished! There are 2 other users: admin and john, with passwords admin and john, respectively.
  16. Try making a mod! As another quick test...
    • In Eclipse, locate the template of the front page - web/src/main/java/pages/Index.tml - and modify it a little.
      If you change the template or java of a page you'll see the change just a moment later in your running application.
    • Remember - if the application isn't running then you can still immediately preview the mod by opening the .tml file with a web browser, or in Eclipse try Open With > Web Browser if that option is available. This is one of Tapestry's many strengths.
  17. Explore! Visit the Orientation, Tips, Troubleshooting and Bugs & Enhancements pages for more info.






©2006, 2007 Geoff Callender, Sydney, Australia