The Cargo communityhas announced the release of Cargo 1.0, a thin wrapper that lets you manipulate Java EE containers in a standard way. Cargo is often used to deploy applications to containers from ant or maven builds. Cargo can install the container and dependencies needed for your deployment as well. Possible use cases for Cargo include:
- Starting containers for integration and functional tests
- Starting containers for applications that require a container to be started (Plugins for IDEs, etc)
- As a framework to manipulate J2EE Module file, including container-specific descriptors. For example, it can be useful if you wish to implement the JSR88 client side
- Generating container configurations for deployment. For example, you may have an application running on Tomcat 5.x and you may want to package a fully working configuration (server.xml, webapps/ dir with your WAR files in there, etc).
Among the tools and APIs that Cargo provides are:
- A Java API to start/stop/configure Java Containers and deploy modules into them.
- A Java API to parse/create/merge Java EE Modules
- Ant tasks, Maven 1, Maven 2 plugins.
- Intellij IDEA and Netbeans plugins are in the sandbox.
This release of Cargo includes the following major improvements:
- Multiple DataSource and Resource support via Maven/Ant/Java properties (CARGO-608)
- Support for Tomcat, WebLogic, OC4J, Resin
- Transactional DataSource configuration support (CARGO-644)
- Including support for WebLogic and OC4J
- JBoss Clustering Support for Deploying to farm directory (CARGO-535)
- Support for Servlet 2.4 web.xml files (CARGO-534)
- Added configuration option to allow JVM to be specified (CARGO-480)
New containers include:
- Tomcat 6.x (CARGO-563)
- Jetty 6.x (CARGO-32)
- JBoss 4.2x (CARGO-562)
- WebLogic 8.1-10.3x (CARGO-636)
- JOnAs 4-5.x (CARGO-94)
You can download Cargo 1.0 here.


