HomeDocumentation > Creating deployment plans > Understanding deployment plans

Every module that you install in Geronimo, whether it is a service, application, resource, and so on, can be 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. The Java EE 5 specification defines standard deployment descriptors such as web.xml, application.xml, and so on. In some cases, the deployment descriptor is all that is required to install a module into a Geronimo server. However, in many cases, server-specific configuration is required when modules are installed. This server-specific configuration is accomplished by using Geronimo deployment plans.

Geronimo deployment plans can be packaged along with the application or specified externally at deployment time. If provided during deployment, this plan will overwrite any other Geronimo specific deployment plan provided with the application.

To package the deployment plans in you application you have to follow some naming conventions and place the file in a specific directory within your packaged application. For example, in a Web application you would include the geronimo-web.xml under the /WEB-INF directory, same place where you are also providing the web.xml descriptor, all within the WAR. For an enterprise application you would include the geronimo-application.xml under the /META-INF directory, same place where you are also providing the application.xml descriptor, all within the WAR.

Java EE Deployment Plans

Common Elements & Configuration

Module Type Geronimo Schema Description
Server Plans & Common Elements http://geronimo.apache.org/xml/ns/deployment-1.2 Used to deploy new services in Geronimo in a standalone plan, and also contains common elements used by many other plans.
Geronimo Plugin Descriptor http://geronimo.apache.org/xml/ns/plugins-1.3 Metadata on a Geronimo plugin or a list of available Geronimo plugins.
Security Mapping http://geronimo.apache.org/xml/ns/security-2.0 Common security elements used by other plans.
Security Realms http://geronimo.apache.org/xml/ns/loginconfig-2.0 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 http://geronimo.apache.org/xml/ns/naming-1.2 Common elements for references to other components (EJBs, database pools, JMS resources, J2EE Connectors, Web Services, etc.)
Primary Key Generator http://openejb.apache.org/xml/ns/pkgen-2.1 Abbreviated syntax for configuring primary key generators for CMP entity beans. Avoids manually configuring and wiring up PK generator GBeans.
CORBA CSS Configuration http://openejb.apache.org/xml/ns/corba-css-config-2.1 Abbreviated syntax for configuring security for clients accessing remote EJBs via CORBA.
CORBA TSS Configuration http://openejb.apache.org/xml/ns/corba-tss-config-2.1 Abbreviated syntax for configuring security for EJBs exposed via CORBA.
config.xml http://geronimo.apache.org/xml/ns/attributes-1.2 The format of the var/config/config.xml file.
Tomcat Web App Configuration http://geronimo.apache.org/xml/ns/web/tomcat/config-1.0 If you use the generic (geronimo-web-2.0.xsd) web application configuration, you can use these elements in the container-config element to configure Tomcat-specific behavior.
Jetty Web App Configuration http://geronimo.apache.org/xml/ns/web/jetty/config-1.0.1 If you use the generic (geronimo-web-2.0.xsd) web application configuration, you can use these elements in the container-config element to configure Jetty-specific behavior.

Further reading