If you are in a hurry to have Apache Geronimo up and running, this article can show you the basic steps of downloading, building (when needed) and running the server in a short time.
All you need is 5 to 10 minutes to follow these steps.
Table of Contents | ||
---|---|---|
|
Getting the software
There are currently the following two ways to get the released software:
- Retrieve the source code from the Apache SVN repository.
- Download the binary files from the Apache Geronimo Web site.
This section only shows how to download the binary files from the Apache Geronimo Web site because this way is faster and easier than retrieving the source code from the Apache SVN repository.
Prerequisites
Before you install Geronimo, you must install the Java Runtime Environment (JRE) or Java Development Kit (JDK). JDK is only required for wsgen tools.
Installing Java SE 5 or 6
Apache Geronimo v2.2 is Java EE 5 Certified. For more information about how to download and install the latest JRE or JDK of Java SE 5 or Java SE 6, go to http://java.sun.com.
Info |
---|
It is possible to run Apache Geronimo v2.2 on the IBM 1.5.0/1.6.0 SDK and other implementations of Java that are certified as Java SE 5 or 6 compliant, but Geronimo is not tested or certified on those implementations. |
Downloading binary files
You can go to http://geronimo.apache.org/downloads.html to download the available packages (binary files and source code). You must select the installation file according to the platform that you plan to install and run Apache Geronimo on.
Geronimo v2.2 is available in the following three assembly configurations:
- Java EE 5 : full Java EE 5 functionality
- Minimal (Little-G) : Web Container, Transaction, and Connector capabilities
- Framework : Geronimo kernel core functionality
In this section, we use Java EE 5 assembly configuration with Tomcat Web container. For more information about the difference between these three assembly configurations, see Getting and installing Geronimo.
You can download the installation file with the compression format (.zip or .tar.gz) that is compatible with your operating system by clikcing the link on the website. To install Apache Geronimo, extract the binary files to a new directory on your hard disk, for example, z:/geronimo. In the rest of this section, this directory is referred to as <geronimo_home>.
Starting the server
To start Apache Geronimo:
- In the command-line interface, go to the <geronimo_home>/bin directory.
- Type one of the following commands:
geronimo run
start-server
gsh geronimo/start-server
These commands start the server within the command-line interface instead of in the background. When the server is started, you can see the following information.
No Format | ||
---|---|---|
| ||
Launching Geronimo Server...
Booting Geronimo Kernel (in Java 1.5.0_13)...
Module 1/65 org.apache.geronimo.framework/j2ee-system/2.2-SNAPSHOT/car started in .000s
Module 2/65 org.apache.geronimo.framework/jee-specs/2.2-SNAPSHOT/car started in .000s
Module 3/65 org.apache.geronimo.framework/rmi-naming/2.2-SNAPSHOT/car started in .180s
Module 4/65 org.apache.geronimo.framework/j2ee-security/2.2-SNAPSHOT/car started in .126s
Module 5/65 org.apache.geronimo.configs/j2ee-server/2.2-SNAPSHOT/car started in .031s
Module 6/65 org.apache.geronimo.plugins.classloaders/geronimo-javaee-deployment_1.1MR3_spec/2.2-SNAPSHOT/car started in .000s
Module 7/65 org.apache.geronimo.framework/xmlbeans/2.2-SNAPSHOT/car started in .000s
Module 8/65 org.apache.geronimo.framework/plugin/2.2-SNAPSHOT/car started in .495s
Module 9/65 org.apache.geronimo.framework/geronimo-gbean-deployer/2.2-SNAPSHOT/car started in .233s
Module 10/65 org.apache.geronimo.framework/transformer-agent/2.2-SNAPSHOT/car started in .000s
Module 11/65 org.apache.geronimo.configs/transaction/2.2-SNAPSHOT/car started in .254s
Module 12/65 org.apache.geronimo.plugins.classloaders/xbean-finder/2.2-SNAPSHOT/car started in .000s
Module 13/65 org.apache.geronimo.configs/derby/2.2-SNAPSHOT/car started in .000s
Module 14/65 org.apache.geronimo.configs/system-database/2.2-SNAPSHOT/car started in 1.416s
Module 15/65 org.apache.geronimo.plugins.classloaders/geronimo-schema-jee_5/2.2-SNAPSHOT/car started in .000s
Module 16/65 org.apache.geronimo.configs/webservices-common/2.2-SNAPSHOT/car started in .000s
Module 17/65 org.apache.geronimo.configs/activemq-broker/2.2-SNAPSHOT/car started in 1.182s
Module 18/65 org.apache.geronimo.configs/openjpa/2.2-SNAPSHOT/car started in .004s
Module 19/65 org.apache.geronimo.framework/server-security-config/2.2-SNAPSHOT/car started in .027s
Module 20/65 org.apache.geronimo.configs/openejb/2.2-SNAPSHOT/car started in .805s
Module 21/65 org.apache.geronimo.configs/axis/2.2-SNAPSHOT/car started in .113s
Module 22/65 org.apache.geronimo.configs/axis2/2.2-SNAPSHOT/car started in .000s
Module 23/65 org.apache.geronimo.configs/axis2-ejb/2.2-SNAPSHOT/car started in .000s
Module 24/65 org.apache.geronimo.configs/j2ee-corba-yoko/2.2-SNAPSHOT/car started in .575s
Module 25/65 org.apache.geronimo.configs/jasper/2.2-SNAPSHOT/car started in .004s
Module 26/65 org.apache.geronimo.configs/tomcat6/2.2-SNAPSHOT/car started in 2.167s
Module 27/65 org.apache.geronimo.configs/aspectj/2.2-SNAPSHOT/car started in .014s
Module 28/65 org.apache.geronimo.configs/clustering/2.2-SNAPSHOT/car started in .055s
Module 29/65 org.apache.geronimo.configs/tomcat6-no-ha/2.2-SNAPSHOT/car started in .000s
Module 30/65 org.apache.geronimo.configs/j2ee-deployer/2.2-SNAPSHOT/car started in .179s
Module 31/65 org.apache.geronimo.configs/connector-deployer/2.2-SNAPSHOT/car started in .073s
Module 32/65 org.apache.geronimo.configs/tomcat6-deployer/2.2-SNAPSHOT/car started in .072s
Module 33/65 org.apache.geronimo.configs/tomcat6-clustering-builder-wadi/2.2-SNAPSHOT/car started in .956s
Module 34/65 org.apache.geronimo.configs/activemq-ra/2.2-SNAPSHOT/car started in .253s
Module 35/65 org.apache.geronimo.configs/javamail/2.2-SNAPSHOT/car started in .023s
Module 36/65 org.apache.geronimo.configs/jasper-deployer/2.2-SNAPSHOT/car started in .016s
Module 37/65 org.apache.geronimo.configs/myfaces/2.2-SNAPSHOT/car started in .013s
Module 38/65 org.apache.geronimo.configs/myfaces-deployer/2.2-SNAPSHOT/car started in .015s
Module 39/65 org.apache.geronimo.configs/openejb-deployer/2.2-SNAPSHOT/car started in .077s
Module 40/65 org.apache.geronimo.configs/openejb-corba-deployer/2.2-SNAPSHOT/car started in .097s
Module 41/65 org.apache.geronimo.configs/persistence-jpa10-deployer/2.2-SNAPSHOT/car started in .053s
Module 42/65 org.apache.geronimo.configs/axis-deployer/2.2-SNAPSHOT/car started in .052s
Module 43/65 org.apache.geronimo.configs/jaxws-deployer/2.2-SNAPSHOT/car started in .000s
Module 44/65 org.apache.geronimo.configs/axis2-deployer/2.2-SNAPSHOT/car started in .043s
Module 45/65 org.apache.geronimo.configs/jaxws-ejb-deployer/2.2-SNAPSHOT/car started in .000s
Module 46/65 org.apache.geronimo.configs/axis2-ejb-deployer/2.2-SNAPSHOT/car started in .041s
Module 47/65 org.apache.geronimo.configs/client-deployer/2.2-SNAPSHOT/car started in .051s
Module 48/65 org.apache.geronimo.configs/hot-deployer/2.2-SNAPSHOT/car started in .303s
Module 49/65 org.apache.geronimo.configs/welcome-tomcat/2.2-SNAPSHOT/car started in .150s
Module 50/65 org.apache.geronimo.configs/spring/2.2-SNAPSHOT/car started in .000s
Module 51/65 org.apache.geronimo.plugins/pluto-support/2.2-SNAPSHOT/car started in .209s
Module 52/65 org.apache.geronimo.plugins/console-tomcat/2.2-SNAPSHOT/car started in 2.503s
Module 53/65 org.apache.geronimo.plugins/plugin-console-tomcat/2.2-SNAPSHOT/car started in .315s
Module 54/65 org.apache.geronimo.plugins/sysdb-console-tomcat/2.2-SNAPSHOT/car started in .377s
Module 55/65 org.apache.geronimo.plugins/activemq-console-tomcat/2.2-SNAPSHOT/car started in .559s
Module 56/65 org.apache.geronimo.configs/remote-deploy-tomcat/2.2-SNAPSHOT/car started in .066s
Module 57/65 org.apache.geronimo.configs/uddi-tomcat/2.2-SNAPSHOT/car started in .477s
Module 58/65 org.apache.geronimo.configs/ca-helper-tomcat/2.2-SNAPSHOT/car started in .103s
Module 59/65 org.apache.geronimo.configs/sharedlib/2.2-SNAPSHOT/car started in .007s
Module 60/65 org.apache.geronimo.configs/mejb/2.2-SNAPSHOT/car started in .242s
Module 61/65 org.apache.geronimo.configs/concurrent/2.2-SNAPSHOT/car started in .120s
Module 62/65 org.apache.geronimo.configs/concurrent-deployer/2.2-SNAPSHOT/car started in .021s
Module 63/65 org.apache.geronimo.framework/gshell-framework/2.2-SNAPSHOT/car started in .000s
Module 64/65 org.apache.geronimo.framework/gshell-geronimo/2.2-SNAPSHOT/car started in .000s
Module 65/65 org.apache.geronimo.framework/gshell-remote/2.2-SNAPSHOT/car started in .000s
Startup completed in 17.632s seconds
Listening on Ports:
1050 127.0.0.1 CORBA Naming Service
1099 0.0.0.0 RMI Naming
1527 0.0.0.0 Derby Connector
2001 127.0.0.1 OpenEJB ORB Adapter
4201 0.0.0.0 OpenEJB Daemon
6882 127.0.0.1 OpenEJB ORB Adapter
8009 0.0.0.0 Tomcat Connector AJP AJP
8080 0.0.0.0 Tomcat Connector HTTP BIO HTTP
8443 0.0.0.0 Tomcat Connector HTTPS BIO HTTPS
9999 0.0.0.0 JMX Remoting Connector
61613 0.0.0.0 ActiveMQ Transport Connector
61616 0.0.0.0 ActiveMQ Transport Connector
Started Application Modules:
EAR: org.apache.geronimo.configs/uddi-tomcat/2.2-SNAPSHOT/car
EAR: org.apache.geronimo.plugins/console-tomcat/2.2-SNAPSHOT/car
JAR: org.apache.geronimo.configs/mejb/2.2-SNAPSHOT/car
RAR: org.apache.geronimo.configs/activemq-ra/2.2-SNAPSHOT/car
RAR: org.apache.geronimo.configs/system-database/2.2-SNAPSHOT/car
WAR: org.apache.geronimo.configs/ca-helper-tomcat/2.2-SNAPSHOT/car
WAR: org.apache.geronimo.configs/remote-deploy-tomcat/2.2-SNAPSHOT/car
WAR: org.apache.geronimo.configs/welcome-tomcat/2.2-SNAPSHOT/car
WAR: org.apache.geronimo.plugins/activemq-console-tomcat/2.2-SNAPSHOT/car
WAR: org.apache.geronimo.plugins/plugin-console-tomcat/2.2-SNAPSHOT/car
WAR: org.apache.geronimo.plugins/sysdb-console-tomcat/2.2-SNAPSHOT/car
Web Applications:
/
/CAHelper
/activemq
/console
/console-base
/juddi
/plugin
/remote-deploy
/system-database
Geronimo Application Server started
Geronimo Server started in 0:00:20.803
|
To verify that the Apache Geronimo server is running, go to http://localhost:8080/console to open the Geronimo administrative console. The Geronimo administrative console is the first application you can test. It is deployed in the standard, full Java EE certified distribution of Apache Geronimo.
When the Geronimo administrative console is open, enter system as the user name and manager as the password.
The following figure shows the Web-based Geronimo administrative console.
Now you have Apache Geronimo up and running. The following section shows you how to create, deploy, and run a sample JSP Web application on Apache Geronimo.
Creating and deploying a sample application
To create a HelloWorld JSP Web application:
- Create a new directory to hold all the application related files. In the rest of this section, this directory is referred to as <app_home>.
- In the <app_home> directory, create a plain text file named HelloWorld.jsp, and then copy the following code to this file.
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
<html>
<head>
<jsp:useBean id="datetime" class="java.util.Date"/>
<title>
Basic HelloWorld JSP
</title>
</head>
<body bgcolor="#1276C2">
<h1>
<font face="tahoma" color="white">
Hello world from GERONIMO!
</font>
</h1>
<font face="tahoma" color="white">on ${datetime}</font>
</body>
</html>
|
To deploy an application, you must create a Geronimo specific deployment plan. To create the deployment plan for the sample application:
- Create a directory named WEB-INF in the <app_home> directory.
- In the <app_home>/WEB-INF directory, create a plain text file named geronimo-web.xml, and then copy the following code to this file.
Code Block xml xml borderStyle solid title Geronimo deployment plan geronimo-web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://geronimo.apache.org/xml/ns/j2ee/web-2.0.1"> <environment> <moduleId> <groupId>org.apache.geronimo.samples</groupId> <artifactId>HelloWorldApp</artifactId> <version>2.2</version> <type>war</type> </moduleId> </environment> <context-root>/hello</context-root> </web-app>
- In the <app_home>/WEB-INF directory, create a plain text file named web.xml, and then copy the following code to this file.
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<welcome-file-list>
<welcome-file>HelloWorld.jsp</welcome-file>
</welcome-file-list>
</web-app>
|
Deploying and testing the application
In this example, we do not invest time in packaging the application. Instead, we use the --inPlace
feature of the deployer tool to deploy the application. You can use this feature to deploy an application from any directory.
To deploy the application:
- In the command-line interface, go to the <geronimo_home>/bin directory.
- Type the following command:
No Format | ||
---|---|---|
| ||
deploy --user system --password manager deploy --inPlace <app_home>
|
When the application is successfully deployed, you can see the following message:
No Format | ||
---|---|---|
| ||
D:\geronimo-tomcat6-javaee5-2.2\bin>deploy --user system --password manager deploy --inPlace \HelloWorld
Using GERONIMO_BASE: D:\geronimo-tomcat6-javaee5-2.2
Using GERONIMO_HOME: D:\geronimo-tomcat6-javaee5-2.2
Using GERONIMO_TMPDIR: var\temp
Using JRE_HOME: C:\Java\jdk1.5.0_06\jre
Deployed sample.applications/HelloWorldApp/2.2/war @ /hello
|
To test the application, go to http://localhost:8080/hello.
Stopping the server
In the command-line interface where the server is started, press CTRL+C to stop the server.
Summary
This article shows you how simple it is to have Apache Geronimo up and running. It takes less than five minutes to start the server if you have installed the prerequisites. Additionally, this article shows you how to create, deploy and test a simple JSP Web application in less than five minutes.
Quick start - Apache Geronimo for the impatient
Getting Geronimo
...
Download Geronimo from [Geronimo Downloads|http://geronimo.apache.org/downloads.html]
Geronimo 2.1 is available in three assembly configurations:
{indent:2}
* Framework : Geronimo kernel core functionality
* Minimal : Web Container, Transaction, and Connector capabilities
* Java EE 5 : full Java EE 5 functionality
{indent:1}
Minimal and Java EE 5 assemblies are provided with Jetty or Tomcat Web Containers. You can find more information about the Jetty project [here|http://www.mortbay.org/]. More information on the Tomcat project is available [here|http://tomcat.apache.org/]. Both are excellent Web Containers that are compliant with the Servlet 2.5 and JSP 2.1 specifications. Your choice may be driven by your past experience and particular functionality requirements.
The remainder of these instructions assume you have chosen the Java EE 5 server with Jetty.
Installing Geronimo
...
To install Geronimo, simply unzip or untar the downloaded file:
{indent:2}
_tar zxvf geronimo-jetty6-javaee5-2.1-bin.tar.gz_
{indent:1}
or
{indent:2}
_unzip geronimo-jetty6-javaee5-2.1-bin.zip_
{indent:1}
Note for Windows users:
The maximum path length for a directory path on Windows is 255 characters. Installing Geronimo into a long directory path may cause the installation or server start up to fail. It is recommended that you use a short directory name, such as "c:\g\".
The following sections describe commands which are relative to the geronimo-jetty6-javaee5-2.1 directory which the preceding installation will create.
Starting the Geronimo server
...
You can start the Geronimo server using either of the following commands (there are .bat equivalents to the following *nix commands):
{indent:2}
* _./bin/gsh geronimo/start-server_
* _./bin/geronimo.sh run_
Stopping a Geronimo server
...
You can stop a Geronimo server using any of the following techniques:
{indent:2}
* _./bin/gsh geronimo/stop-server_
* _./bin/geronimo.sh stop_
* Control-c (assuming the process is running in the foreground) or equivalent process management command (e.g kill -2 <process-number>)
* the shutdown feature of the Administrative Console.
Deploying an application
...
You can deploy an application archive (.war, .ear, or .jar) to a Geronimo server using any of the following techniques:
...