Every "asset" you install in Geronimo, whether it is a service, application, resource, etc., it is configured via a deployment plan. These deployment plans are XML files based on XML Schemas containing the configuration details for a specific application module or component. JEE specification let's part of the configuration of such assets to be done by server specific deployment plans in addition to the standard deployment descriptors such as web.xml, application.xml, etc.
JEE specification also let's you use Annotations where you add resource references, dependencies, etc. directly in the code. Geronimo provides a Plan Creator wizard that automatically generates the necessary deployment plans based on the standard deployment descriptors and annotations.
This document is organized in the following sections:
XML Schemas
Java EE Deployment Plans
Module Type |
Geronimo Schema |
Preferred Java EE Schema |
---|---|---|
General (Tomcat or Jetty) Web Application (WAR) |
||
Tomcat-Only Web Application (WAR) |
||
Jetty-Only Web Application (WAR) |
||
EJB (JAR) |
||
J2EE Connector (RAR) |
||
Application Client (JAR) |
http://geronimo.apache.org/xml/ns/j2ee/application-client-2.0 |
|
Application (EAR) |
Common Elements & Configuration
Module Type |
Geronimo Schema |
Description |
---|---|---|
Server Plans & Common Elements |
Used to deploy new services in Geronimo in a standalone plan, and also contains common elements used by many other plans. |
|
Geronimo Plugin Descriptor |
Metadata on a Geronimo plugin or a list of available Geronimo plugins. |
|
Security Mapping |
Common security elements used by other plans. |
|
Security Realms |
Abbreviated syntax for configuring security realm and login module GBeans. You can either manually configure multiple GBeans or declare a single GBean for the realm using this to configure all the login modules. |
|
Naming |
Common elements for references to other components (EJBs, database pools, JMS resources, J2EE Connectors, Web Services, etc.) |
|
Primary Key Generator |
Abbreviated syntax for configuring primary key generators for CMP entity beans. Avoids manually configuring and wiring up PK generator GBeans. |
|
CORBA CSS Configuration |
Abbreviated syntax for configuring security for clients accessing remote EJBs via CORBA. |
|
CORBA TSS Configuration |
Abbreviated syntax for configuring security for EJBs exposed via CORBA. |
|
config.xml |
The format of the |
|
Tomcat Web App Configuration |
If you use the generic ( |
|
Jetty Web App Configuration |
If you use the generic ( |
Configurations
The examples provided in this section are independent of any application. Most of these configurations can be generated and deployed through the Geronimo Administration Console as well.
Connection pools
For the most part, deployment plans for database connection pool will be very similar from each other. However, depending on the database the pool will be connecting to, you may need to specify some additional parameters.
Embedded Derdy DB
{code:xml|borderStyle=solid|title=Embedded Derdy DB connection pool
<?xml version="1.0" encoding="UTF-8"?>
<connector xmlns="http://geronimo.apache.org/xml/ns/j2ee/connector-1.2">
<dep:environment xmlns:dep="http://geronimo.apache.org/xml/ns/deployment-1.2">
<dep:moduleId>
<dep:groupId>console.dbpool</dep:groupId>
<dep:artifactId>TimeReportPool</dep:artifactId>
<dep:version>1.0</dep:version>
<dep:type>rar</dep:type>
</dep:moduleId>
<dep:dependencies>
<dep:dependency>
<dep:groupId>org.apache.geronimo.configs</dep:groupId>
<dep:artifactId>system-database</dep:artifactId>
</dep:dependency>
</dep:dependencies>
</dep:environment>
<resourceadapter>
<outbound-resourceadapter>
<connection-definition>
<connectionfactory-interface>javax.sql.DataSource</connectionfactory-interface>
<connectiondefinition-instance>
<name>TimeReportPool</name>
<config-property-setting name="Driver">org.apache.derby.jdbc.EmbeddedDriver</config-property-setting>
<config-property-setting name="ConnectionURL">jdbc:derby:TimeReportDB</config-property-setting>
<connectionmanager>
<local-transaction/>
<single-pool>
<max-size>10</max-size>
<min-size>0</min-size>
<match-one/>
</single-pool>
</connectionmanager>
</connectiondefinition-instance>
</connection-definition>
</outbound-resourceadapter>
</resourceadapter>
</connector>
Security
Resources
Applications
Depending on the type of application you are deploying you will need a different type of deployment plan. The following table illustrates the standard JEE deployment descriptors as well as those specific to Apache Geronimo.
File |
Standard JEE deployment descriptors |
Apache Geronimo specific Deployment plan |
---|---|---|
Web Application Archive (WAR) |
web.xml |
geronimo-web.xml |
Enterprise Web application archive (EAR) |
application.xml |
geronimo-application.xml |
J2EE Connector resources archive (RAR) |
ra.xml |
geronimo-ra.xml |
J2EE client application archive (JAR) |
client.xml |
geronimo-application-client.xml |
JAR containing EJBs |
ejb-jar.xml |
openejb-jar.xml |