Cargo : Quick start This page last changed on Mar 18, 2006 by vmassol. The following examples demonstrate how to configure Resin 3.0.15 to start in `target/resin3x` and deploy a WAR located in `path/to/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 Static deployment means that the Deployable is deployed before the container is started. Here's an example using the strongly typed Java API:
    Deployable war = new WAR("path/to/simple.war");

    LocalConfiguration configuration =
        new Resin3xStandaloneLocalConfiguration(new File("target/myresin3x"));
    configuration.addDeployable(war);

    InstalledLocalContainer container =
        new Resin3xInstalledLocalContainer(configuration);
    container.setHome(new File("c:/apps/resin-3.0.18"));

    container.start();
    // Here you are assured the container is started.

    container.stop();
    // Here you are assured the container is stopped.
Here's the same example using the generic untyped API (which we recommend as it leads to more generic code):
    Deployable war = new DefaultDeployableFactory().createDeployable(
        "resin3x", "path/to/simple.war", DeployableType.WAR);

    ConfigurationFactory configurationFactory =
        new DefaultConfigurationFactory();
    LocalConfiguration configuration =
        (LocalConfiguration) configurationFactory.createConfiguration(
            "resin3x", ConfigurationType.STANDALONE);
    configuration.addDeployable(war);

    InstalledLocalContainer container =
        (InstalledLocalContainer) new DefaultContainerFactory().createContainer(
            "resin3x", ContainerType.INSTALLED, configuration);
    container.setHome(new File("c:/apps/resin-3.0.18"));

    container.start();
    // Here you are assured the container is started.

    container.stop();
    // Here you are assured the container is stopped.
### Hot deployment Hot deployment means that the Deployable is deployed after the container is started.
    InstalledLocalContainer container = new Resin3xInstalledLocalContainer(
        new Resin3xStandaloneLocalConfiguration(
            new File("target/myresin3x")));
    container.setHome(new File("c:/apps/resin-3.0.18"));

    container.start();

    // Here you are assured the container is started.

    Deployable war = new WAR("path/to/simple.war");
    Deployer deployer = new ResinDeployer(container);
    deployer.deploy(war);

    // Here you are NOT sure the WAR has finished deploying. To be sure you
    // need to use a DeployableMonitor to monitor the deployment. For example
    // the following code deploys the WAR and wait until it is available to
    // serve requests (the URL should point to a resource inside your WAR):
    deployer.deploy(war, new URLDeployableMonitor(
        new URL("http://server:port/some/url")));

    container.stop();

    // Here you are assured the container is stopped.

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