If you are in a hurry to have Apache Geronimo up and running right away, this article will provide you with some basic steps for downloading, building (when needed) and run the server in no time. This is clearly not a complete guide so you may want to check the other links in the Apache Geronimo v1.0 - User's Guide main section for further information.

All you need is 5 to 10 minutes and to follow these basic steps.

Getting the software

At this time you have mainly two options to get the software. You can either download the latest, and stable, major milestone (namely M4, M5...) or get the latest available build (unstable sometimes). The fastest and easiest way is to get the binary directly from the Apache site. Since this article is intended to help you to have Apache Geronimo up and running in the fastest way only the binary download will be covered at this time.

Prerequisites

Although this installation path is the fastest one, still you will need to install some software before installing Geronimo.

J2SE 1.4.2

Geronimo is currently using the Sun ORB for RMI so it is required to use SUN JDK. Using a different JDK or different version of the JDK may result in compilation errors. Refer to the following URL for details on how to download and install J2SE 1.4.2:
http://java.sun.com

Apache Geronimo v1.0 does not support Java 1.5, if you use this version Geronimo will fail to start.

Download binaries

Depending on the platform you plan to install and run Apache Geronimo you will select the appropriate installation image. Open a Web browser and access the following URL, there you will find the available packages for download (binaries and source code).

http://geronimo.apache.org/downloads.html

Select the file compression format compatible with your system (zip, tar, gz) by clicking directly on the link, download it and expand the binary to your hard drive in a new directory. For example in z:/geronimo, from now on this directory will be referenced as <geronimo_home>.

The installation of Apache Geronimo is as simple as uncompressing the .zip or .tar files. The next step is to start the server.

Start the server

With Apache Geronimo already installed, open a command line console and change directory to <geronimo_home>/bin. In that directory you will find some script files (.bat and .sh) and three .jar files. If you look at these three files you will find:

  • client.jar
  • deployer.jar
  • server.jar

To start the server run the following command:

java -jar server.jar

Alternatively a script is provided, the startup script will also start the server. Once the server is started you should see the following information on the command line console.

Booting Geronimo Kernel (in Java 1.4.2_09)...
Started configuration  1/23   1s geronimo/rmi-naming/1.0/car
Started configuration  2/23   3s geronimo/j2ee-server/1.0/car
Started configuration  3/23   2s geronimo/j2ee-security/1.0/car
Started configuration  4/23   9s geronimo/activemq-broker/1.0/car
Started configuration  5/23   1s geronimo/activemq/1.0/car
Started configuration  6/23   0s geronimo/system-database/1.0/car
Started configuration  7/23   4s geronimo/directory/1.0/car
Started configuration  8/23   0s geronimo/ldap-realm/1.0/car
Started configuration  9/23   2s geronimo/jetty/1.0/car
Started configuration 10/23   0s geronimo/geronimo-gbean-deployer/1.0/car
Started configuration 11/23   2s geronimo/j2ee-deployer/1.0/car
Started configuration 12/23   0s geronimo/jetty-deployer/1.0/car
Started configuration 13/23   1s geronimo/welcome-jetty/1.0/car
Started configuration 14/23   1s geronimo/ldap-demo-jetty/1.0/car
Started configuration 15/23   1s geronimo/servlets-examples-jetty/1.0/car
Started configuration 16/23   2s geronimo/jsp-examples-jetty/1.0/car
Started configuration 17/23   3s geronimo/webconsole-jetty/1.0/car
Started configuration 18/23   1s geronimo/uddi-jetty/1.0/car
Started configuration 19/23   1s geronimo/jmxdebug-jetty/1.0/car
Started configuration 20/23  11s geronimo/daytrader-derby-jetty/1.0/car
Started configuration 21/23   0s geronimo/remote-deploy-jetty/1.0/car
Started configuration 22/23   1s geronimo/hot-deployer/1.0/car
Started configuration 23/23   0s geronimo/j2ee-system/1.0/car
Startup completed in 51 seconds
  Listening on Ports:
    1099 0.0.0.0   RMI Naming
    1527 0.0.0.0   Derby Connector
    4201 0.0.0.0   ActiveIO Connector EJB
    4242 0.0.0.0   Remote Login Listener
    8019 127.0.0.1 Jetty Connector AJP13
    8080 0.0.0.0   Jetty Connector HTTP
    8443 0.0.0.0   Jetty Connector HTTPS
   61616 0.0.0.0   ActiveMQ Message Broker Connector

  Started Application Modules:
    WAR: geronimo/welcome-jetty/1.0/car
    WAR: geronimo/servlets-examples-jetty/1.0/car
    EAR: geronimo/daytrader-derby-jetty/1.0/car
    EAR: geronimo/webconsole-jetty/1.0/car
    WAR: geronimo/jmxdebug-jetty/1.0/car
    RAR: geronimo/activemq/1.0/car
    WAR: geronimo/ldap-demo-jetty/1.0/car
    WAR: geronimo/jsp-examples-jetty/1.0/car
    WAR: geronimo/remote-deploy-jetty/1.0/car
    RAR: geronimo/system-database/1.0/car
    EAR: geronimo/uddi-jetty/1.0/car

  Web Applications:
    http://hcunico:8080/
    http://hcunico:8080/console
    http://hcunico:8080/console-standard
    http://hcunico:8080/daytrader
    http://hcunico:8080/debug-tool
    http://hcunico:8080/jsp-examples
    http://hcunico:8080/juddi
    http://hcunico:8080/ldap-demo
    http://hcunico:8080/remote-deploy
    http://hcunico:8080/servlets-examples

Geronimo Application Server started

To test the Apache Geronimo server you can just point your Web browser to the following URL to test the Geronimo Console. The Geronimo Console is the first application you can test, and the good thing is, it is already deployed.

http://localhost:8080/console

When prompted enter system as the user name and manager as the password.

The following figure illustrates the Web based console.

At this point you have Apache Geronimo up and running and the time spent has been minimal. The following section will propose a very basic sample JSP and show you how to deploy and run that sample application.

Create and deploy a sample application

A HelloWorld like JSP is almost a default for these basic testing and everybody is already familiar with it. Create a new directory to hold all the application related files. From now on this directory will be referred as <app_home>.

Create a plain text file in the <app_home> directory named HelloWorld.jsp and copy the content of the following example.

HelloWorld.jsp
<html>
  <head>
    <jsp:useBean id="datetime" class="java.util.Date"/>
    <title>
      Basic HelloWorld JSP
    </title>
  </head>
  <body bgcolor="#909DB8">
    <h1>
      <font face="tahoma" color="white">
        Hello world from GERONIMO!
      </font>
    </h1>
    <font face="tahoma" color="white">on ${datetime}</font>
  </body>
</html>

Although for such a simple application it is not necessary, you will still create a Geronimo deployment plan so you would get a first view of the deployment plans. Create a directory named WEB-INF inside the <app_home> directory.

Create a plain text file in the <app_home>/WEB-INF directory named geronimo-web.xml and copy the content of the following example.

Geronimo deployment plan geronimo-web.xml
<?xml version="1.0"?>
<web-app
   xmlns="http://geronimo.apache.org/xml/ns/web"
   xmlns:naming="http://geronimo.apache.org/xml/ns/naming"
   configId="HelloWorld">

   <context-root>/hello</context-root>

</web-app>

Create a plain text file in the <app_home>/WEB-INF directory named web.xml and copy the content of the following example.

web.xml
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee">
   <welcome-file-list>
      <welcome-file>HelloWorld.jsp</welcome-file>
   </welcome-file-list>
</web-app>

Package the application

From a command line window change directory to <app_home> and run the following command to package the HelloWorld application into a single .war file.

*jar -cvf HelloWorld.war **

This will create a HelloWorld.war file in the <app_home> directory. The next step is to deploy this application.

Deploy and test the application

To deploy the application you have two options, you can use the Geronimo Console or the command line. For this example you will use the command line option. Change directory to <geronimo_home>/bin and run the following command:

java -jar deployer.jar --user system --password manager deploy <app_home>/HelloWorld.war

Once the application is successfully deployed you should see the following message:

E:\geronimo\bin>java -jar deployer.jar --user system --password manager deploy E:\HelloWorld\HelloWorld.war
    Deployed HelloWorld @ http://hcunico:8080/hello

Test the application by pointing a Web browser to the following URL:

http://localhost:8080/hello

Summary

This article showed you how simple is to have Apache Geronimo up and running. The overall time for getting the server running should be less than five minutes if you have the prerequisite (Java 1.4.2) already installed. Additionally, this article also showed you how to create, deploy and test a very simple JSP in less than five minutes.

  • No labels

6 Comments

  1. Anonymous

    Great example just to show that an application can be deployed to Geronimo and executed!!!

  2. Anonymous

    First time in my life I was able to deploy an application so easily and quickly on an application server, great step by step article.

  3. Unknown User (giridharan.kesavan@cognizant.com)

    Nice article, with in no time iam able to deploy the application, it will be much helpful if you can provide such articles for connection pooling and things like that .

  4. Anonymous

    Excellent article made deployment pretty easy

  5. Anonymous

    Hi This isan excellent article for a novice also . step by step approach made it so easy and fast deployment

  6. Unknown User (sitkill)

    great start for the impatient (smile) You might (if you feel it's neccessary) want to add a note that the current 1.0 release of geronimo isn't compatible with the current release of java (1.5.0). I believe this is still true.