Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 48 Next »

Mission

Cargo provides a Java API to start/stop and configure Java containers

Possible use cases for Cargo:

  • To start containers for integration and functional tests
  • To start containers for applications that require a container to be started (Plugins for IDEs, etc)

Status

Version status (click in the status column to get release notes):

Version

Status

Comments

0.1

(tick)

Released on 11/09/04

0.2

(tick)

Released on 03/10/04

0.3

(tick)

Released on 30/10/04

0.4

(tick)

Released on 26/11/04

0.5

(error)

Sometime in April 2005 would be good

As glitches may happen even after a container is released for the first time, e.g. if a new feature is added to the framework, but not supported by all containers, we encourage you to report your success/failures in the Tested on section.


Documentation for Cargo version in development

Icon

The documentation below is for Cargo 0.5 which is the version that we are currently developing (not released yet). The documentation for Cargo 0.4 (latest version) is available here

Architecture

  • The Container is the top level interface wrapping a real physical container. It is composed of a Configuration. You can use a Deployer to deploy Deployables.
  • A Configuration tells Cargo how the container is to be configured (whether it should create a standalone setup, whether it should be based on an existing configuration, etc)
  • Deployables are archives to be deployed in the Container. They are WARs, EARs, etc.

Feature list

  • ConfigurationA Configuration specifies how the container is configured (logging, security, data sources, location where to put deployables, etc).
  • ContainerA top level interface wrapping a real physical container
  • DebuggingExplain how to perform debugging when something doesn't work in Cargo
  • DeploymentHow to deploy components to a container
  • ExtensionsExtensions are additions to the Cargo core Java API such as build tool plugins, IDE plugins, etc
  • Module APIAPI to manipulate J2EE archives, including vendor-specific deployment descriptors

Container support

List of supported containers and the integration point that are implemented for each container (Java API, Ant tasks and Maven plugin). The specified version is the Cargo version where the feature was first made available.

Container

Java API(version)

Ant tasks(version)

Maven plugin/(version)

JBoss 3.x

(error) ???

(error) ???

(error) N/A

Jetty 4.x

(tick) 0.1

(error) ???

(error) N/A

OC4J 9.x

(tick) 0.3

(tick) 0.3

(tick) 0.5

Orion 1.x

(tick) 0.1

(tick) 0.1

(tick) 0.5

Orion 2.x

(tick) 0.1

(tick) 0.1

(tick) 0.5

Resin 2.x

(tick) 0.1

(tick) 0.1

(tick) 0.5

Resin 3.x

(tick) 0.1

(tick) 0.1

(tick) 0.5

Tomcat 3.x

(tick) 0.1

(tick) 0.1

(tick) 0.5

Tomcat 4.x

(tick) 0.1

(tick) 0.1

(tick) 0.5

Tomcat 5.x

(tick) 0.1

(tick) 0.1

(tick) 0.5

WebLogic 8.x

(tick) 0.3

(tick) 0.3

(tick) 0.5

Quick Start

The following piece of code demonstrates how to configure Resin 3.0.8 to start in target/resin3x and deploy a WAR located in src/testinput/simple.war. The default port is 8080. Please note that the container.start() and container.stop() methods wait until the container is fully started and fully stopped before continuing. Thus, for any action you are executing after, you are assured the container is completely operational.

Static deployment:

Dynamic deployment:

  • No labels