This page last changed on Nov 26, 2006 by vmassol.

Reference Guide

These are the various XML configuration elements that you can use to configure the Cargo Maven2 plugin. Make sure you also check the use cases which show how to use them.

Top level configuration elements Description Mandatory? Default value
<configuration> Definition of a Configuration Defaults to a standalone configuration if the container is of type local and a runtime one if it's of type remote
<container> Definition of a Container Defaults to a Jetty 5.x container if not specified
<deployer> Definition of a Deployer Defaults to a deployer matching the container's type if none is specified (installed local deployer for an installed container, remote deployer for a remote container and embedded local deployer for an embedded container)
<wait> Decides if Cargo should wait after the container is started or not Defaults to true

<configuration> elements Description Mandatory? Default value
<deployables> List of modules to deploy when the container is started. You specify each module using a <deployable> element. If no deployable is specified and the project's packaging is war, ear or ejb and there is no deployer specified then the generated artifact is added automatically to the list of deployables to deploy
<home> For standalone configuration this is the location where Cargo will create the configuration and for existing configuration this is where it is located ${java.io.tmpdir}/cargo/conf
<implementation> Full classname of a custom configuration implementation to use. In that case the custom configuration is registered with the <containerId> and <type> specified Defaults to the Cargo-provided implementation if not specified
<properties> Values to use for various Configuration properties Default configuration properties
<type> Configuration's type. Valid values are standalone, existing and runtime standalone

<container> elements Description Mandatory? Default value
<append> If true then the file specified by <output> will not be erased across different runs False
<containerId> Id of the container to use. Valid values can be found in the description page for each container jetty5x
<dependencies> List of extra dependencies that will be added to the container execution classpath. No default
<home> Location where the container is installed No default, user must define either a zipUrlInstaller or a home element
<implementation> Full classname of a custom container implementation to use. In that case, the custom container is registered with the <containerId> and <type> specified Defaults to the Cargo-provided implementation if not specified
<log> Path to a file where Cargo logs are saved Logs to the Maven console if no log file is specified
<output> Path to a file where container logs are saved Logs to the file specified by the <log> element or to the Maven console is no such file has been specified
<systemProperties> List of <key>value</key> pairs to be passed as System properties to the container when it is started No default
<timeout> The timeout after which Cargo reports an error if the container is not started or stopped 120000 ms (2 minutes)
<type> Container's type. Valid values are installed, embedded and remote Default value is installed unless the <containerId> has not been specified, in which case the default is to use the Jetty 5.x Embedded container
<zipUrlInstaller> Defines the location of a container distribution zip that will be downloaded and installed No default, a home directory for the container has to be defined in that case

<deployer> elements Description Mandatory? Default value
<deployables> A list of deployables that are going to be deployed in the container when it is started No default
<implementation> TODO No default
<type> TODO local

<deployable> elements Description Mandatory? Default value
<artifactId> Maven artifact id for the module. This artifact id must match either the project's artifact id if your project generates a J2EE artifact (WAR, EAR, EJB and RAR) or it must match a specified <project>/<dependencies>/<dependency> artifact id Defaults to the project's artifact id
<groupId> Maven group id for the module. This group id must match either the project's group id if your project generates a J2EE artifact (WAR, EAR, EJB and RAR) or it must match a specified <project>/<dependencies>/<dependency> group id Defaults to the project's group id
<implementation> TODO No default
<location> Path location where the module can be found Default's to the project's generated artifact location or to the specified <project>/<dependencies>/<dependency> location
<pingURL> TODO No default
<properties> User-defined properties of a deployable.
No default
<type> Maven type for the module. This type must match either the project's packaging if your project generates a J2EE artifact (WAR, EAR, EJB and RAR) or it must match a specified <project>/<dependencies>/<dependency> type Defaults to the project's packaging

<properties> elements  Deployable Type Description Mandatory? Default value
<context> WAR The context name to use when deploying the web application. If not specified, then the default context name is computed from the name of WAR itself (without the file extension) or <project>/<build>/<finalName>
<war> WAR The path of the WAR being deployed. Default's to the project's generated artifact location
<ear> EAR The path of the EAR being deployed. Default's to the project's generated artifact location
<name> EAR The name of EAR deployable (it can be anything, there's no special rule). If not specified, it is computed from the EAR's file name (removing the filename extension) or <project>/<build>/<finalName>
<ejb> EJB The path of the EJB being deployed. Default's to the project's generated artifact location

<dependency> elements Description Mandatory? Default value
<artifactId> Maven's artifact id. This artifact id must match a specified <project>/<dependencies>/<dependency> artifact id Defaults to the project's artifact id
<groupId> Maven's group id. This group id must match a specified <project>/<dependencies>/<dependency> group id Defaults to the project's group id
<type> Maven's type. This type must match a specified <project>/<dependencies>/<dependency> type Defaults to the project's packaging
<location> The path of a folder or a jar file you wish to add to deployable classpath. This element can be used to explicitly add entries to the classpath. For example:
<dependency>
   <location>src/main/resources/conf</location>
</dependency>
If the groupId and artifactId match those of the project then the deployable is the artifact generated by the project. Otherwise the location is the location of the dependency in your local respository.

<zipUrlInstaller> elements Description Mandatory? Default value
<installDir> TODO TODO
<proxy> TODO No default
<url> TODO No default
Document generated by Confluence on Jun 02, 2010 22:47