Friday, September 26, 2008

New deployer mechanism in AS5

If you have not yet had a chance to look at this great blog post by BobMc on deployers in JBoss Application Server 5 (JBAS5), then the time is now. :)
Deployers in JBoss Microcontainer

The deployers are broken into categories that depend on stages - parsing, class loader and real.

2 comments:

  1. There is more than just those three stages. ;-)

    public interface DeploymentStages
    {
    /** The not installed stage - nothing is done here */
    DeploymentStage NOT_INSTALLED = new DeploymentStage("Not Installed");

    /** The parse stage - where metadata is read */
    DeploymentStage PARSE = new DeploymentStage("Parse", NOT_INSTALLED);

    /** The post parse stage - where metadata can be fixed up */
    DeploymentStage POST_PARSE = new DeploymentStage("PostParse", PARSE);

    /** The pre describe stage - where default dependencies metadata can be created */
    DeploymentStage PRE_DESCRIBE = new DeploymentStage("PreDescribe", POST_PARSE);

    /** The describe stage - where dependencies are established */
    DeploymentStage DESCRIBE = new DeploymentStage("Describe", PRE_DESCRIBE);

    /** The classloader stage - where classloaders are created */
    DeploymentStage CLASSLOADER = new DeploymentStage("ClassLoader", DESCRIBE);

    /** The post classloader stage - e.g. aop */
    DeploymentStage POST_CLASSLOADER = new DeploymentStage("PostClassLoader", CLASSLOADER);

    /** The pre real stage - where before real deployments are done */
    DeploymentStage PRE_REAL = new DeploymentStage("PreReal", POST_CLASSLOADER);

    /** The real stage - where real deployment processing is done */
    DeploymentStage REAL = new DeploymentStage("Real", PRE_REAL);

    /** The installed stage - could be used to provide valve in future? */
    DeploymentStage INSTALLED = new DeploymentStage("Installed", REAL);
    }

    ReplyDelete
  2. And there's room to add/configure your own phases...

    S,
    ALR

    ReplyDelete