Cargo : Configuration properties This page last changed on Mar 04, 2006 by vmassol. ### Definition Properties to configure a container (request port, shutdown port, logging level, threads, etc) ### Explanations It is possible to set container configuration properties using the Cargo API. These properties are applied to a Configuration. Using the Java API you can check if a configuration supports a given property by using {Configuration.getCapability().supportsProperty(String propertyName)}}. For example if you want to check if the configuration supports setting the port property:
    boolean isPropertySupported = configuration.getCapability().supportsProperty(ServletPropertySet.PORT);
There are 2 kinds of properties: General properties Container-specific properties. See each container's page for a list of the custom properties it supports. General properties:
Property name | Java constant to use | Description | Valid values | Default value | Example
--- | --- | --- | --- | --- | ---
cargo.hostname | GeneralPropertySet.HOSTNAME | Host name on which the container listens to | string | "localhost" | "myserver"
cargo.jvmargs | GeneralPropertySet.JVMARGS | JVM args to be used when starting/stopping containers | string | N/A | "-Xmx500m"
cargo.logging | GeneralPropertySet.LOGGING | Level representing the quantity of information we wish to log | "low", "medium" or "high" | "medium" | "high"
cargo.protocol | GeneralPropertySet.PROTOCOL | Protocol on which the container is listening to | "http", "https" | "http" | "http"
cargo.remote.password | RemotePropertySet.PASSWORD | Password to use to authenticate against a remote container (when deploying for example) | string | Depends on the container | "manager"
cargo.remote.username | RemotePropertySet.USERNAME | Username to use to authenticate against a remote container (when deploying for example) | string | Depends on the container | "system"
cargo.rmi.port | GeneralPropertySet.RMI_PORT | The port to use when communicating with this server, for example to start and stop it | integer | Depends on the container | "1099"
cargo.servlet.port | ServletPropertySet.PORT | Port on which the Servlet/JSP container listens to | integer | "8080" | "8280"
cargo.servlet.users | ServletPropertySet.USERS | Allow defining users and map to roles | string | N/A | "name1:pwd1:role11,...,role1N|name2:pwd2:role21,...,role2N|..."
### Example using the Java API Starting Tomcat 5.x on port 8081:
    Configuration configuration =
        new Tomcat5xStandaloneLocalConfiguration(new File("target/tomcat5x")));
    configuration.setProperty(ServletPropertySet.PORT, "8081");
    [...]
### Example using the Ant tasks Starting Tomcat 5.x on port 8081:
    <cargo containerId="tomcat5x" home="c:/apps/jakarta-tomcat-5.0.29" action="start">
      <configuration>
        <property name="cargo.servlet.port" value="8081"/>
      </configuration>
    </cargo>
### Example using the Maven 2 plugin Starting Tomcat 5.x on port 8081:
    <build>
      <plugins>
        <plugin>
          <groupId>org.codehaus.cargo.maven2</groupId>
          <artifactId>cargo-maven2-plugin</artifactId>
          <configuration>
            <container>
              <containerId>tomcat5x</containerId>
              [...]
            </container>
            <configuration>
              <properties>
                <cargo.servlet.port>8081</cargo.servlet.port>
              </properties>
            </configuration>
            [...]
          </configuration>
        </plugin>
      </plugins>
    </build>

Document generated by Confluence on Mar 22, 2006 15:28