incubator-wadi-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jules Gosnell <ju...@coredevelopers.net>
Subject Re: [wadi-dev] Cargo support for Jetty
Date Tue, 24 Jan 2006 10:37:20 GMT
All sounds good - anything that gives us a common platform over Jetty 
and TC has to be a good thing - maybe one day there will only be a 
Geronimo/Cargo and a WADI/Cargo integration :-)

Jules


Jan Bartel wrote:

> Jules,
>
> answers inline.
>
>
>> A few questions:
>>
>> My understanding is that Cargo provides a common platform for 
>> lifecycle operations on both container and app, across e.g. Jetty and 
>> TC...?
>
> Yes. There is a common Cargo API that is container agnostic.
>
>
>> Is it JSR77/88 compliant ?
>
> The API itself isn't at the moment (I don't think).
>
> The API goes something like:
>
>  //Set up the webapp you want to be deployed
>  Deployable servletExamples = new 
> WAR("src/test/resources/servlets-examples.war");
>
>  //Set up the canned configuration for the container (eg jetty6)
>  LocalConfiguration config = 
> (LocalConfiguration)factory.createConfiguration("jetty6xEmbedded",
>              ConfigurationType.STANDALONE, tmpdir);
>  
>  //Associate webapp
>  config.addDeployable(servletExamples);
>
>  //Create the container of your choice (eg jetty6)
>  Jetty6xEmbeddedLocalContainer container =       new 
> Jetty6xEmbeddedLocalContainer(config);
>       //Start the container and statically deploy any associated webapps
>  container.start();
>
>  //Create a different webapp
>  Deployable jspExamples = new WAR("src/test/resources/jsp-examples.war");
>
>  //Create a hot deployer for the container
>  Jetty6xEmbeddedDeployer deployer = new Jetty6xEmbeddedDeployer(
>              container);
>
>  //Hot deploy the webapp
>  deployer.deploy(jspExamples);
>
>  //Hot undeploy the webapp
>  deployer.undeploy(jspExamples);
>
>  //Stop the container
>  container.stop();
>
> There is a Maven2 plugin equivalent for all of that API as well, so you
> can set it all up in your pom.xml instead of writing code.
>
>
>> How specifically do you see it being involved in the build - 
>> integration testing - have you seen what Bill has done with cargo, 
>> etc...
>
> No, I haven't seen what Bill has done for Tomcat etc with Cargo, but 
> whatever
> he has done for the others is now do-able also for Jetty.
>
> Note tho' that if you go to using the Cargo plugin to kick off the Jetty
> webcontainer instead of the Jetty6 plugin you won't have the automatic
> redeploy of a webapp if a class changes.
>
>> Can we do with TC what you are thinking of doing with Jetty ? - how 
>> about other containers - JBoss, Geronimo etc ...
>
> I believe Cargo supports Tomcat and JBoss and somebody is looking into
> supporting Geronimo - it's either just newly done or being done.
>
>
> cheers
> Jan



-- 
"Open Source is a self-assembling organism. You dangle a piece of
string into a super-saturated solution and a whole operating-system
crystallises out around it."

/**********************************
 * Jules Gosnell
 * Partner
 * Core Developers Network (Europe)
 *
 *    www.coredevelopers.net
 *
 * Open Source Training & Support.
 **********************************/


Mime
View raw message