Hi Peter,

> -----Original Message-----
> From: Peter Lynch [mailto:[EMAIL PROTECTED]]
> Sent: 30 May 2002 21:31
> To: [EMAIL PROTECTED]
> Cc: Peter Lynch
> Subject: [PATCH] new appserver plugin
> 
> Hello,
> 
> I've been working on an application server plugin for maven. I
originally
> started hacking with an internal ant build file I use at work to
create
> aplication server 'instances', but thankfully Vincent Massol mentioned
the
> way
> Cactus works, and that saved me headache in the end. Thanks so much
> Vincent!
> 

Thanks. I'm glad I could be of help :-)

> Maven appserver plugin rationale:
> When developing a web application (or website for that matter), each
> developer
> working on the project needs to have an environment to run and test
their
> application. Rather than store a complete application server install
in
> source
> control, it is much more feasible to have a centralized install of
that
> application server. Then, using only the minimum configuration files
the
> developer can control a separate instance of the application server on
> that
> machine. The maven appserver plugin uses this technique to install and
> control
> application server instances for developers. The appserver plugin
> __is_not__ for
> deploying webapps or war files into application servers.
> 
> 
> The following maven targets are will ultimately be available:
> maven:appserver-install
> maven:appserver-start
> maven:appserver-stop
> maven:appserver-clean
> 
> These point to j2ee's build.xml: appserver-install, appserver-start,
> appserver-stop, appserver-clean.
> 
> This 'appserver' plugin is actually integrated into the j2ee plugin,
but
> could
> easily be moved into it's own plugin ( appserver ) if suitable. I made
all
> the
> properties for this plugin as maven.appserver.*
> 
> At this point I concentrated on using Tomcat 4.0 as an example to get
the
> generic targets defined and issues worked out.
> 
> I've tested the following scenario so far:
> Windows 2000 + Cygwin
> All appserver targets for Tomcat 4.0.4 Beta 3
> JDK 1.4
> Ant 1.5 ( see below )
> 
> The rest of the app servers that Cactus supported should be easily
> integrated
> now that I have Tomcat 40 working. WE can basically refine and test
them
> one at
> a time.
> 
> warning:
> As of this patch, don't expect any application servers to work other
than
> Tomcat
> 40. The other servers build files are included but they are not fully
> functional
> yet.
> 
> To copy additional files for plugins I added a small change to
> build-bootstrap.xml. I didn't know the best way to do it but hope that
was
> ok.
> 
> ----
> 
> Outstanding issues:
> 
> - servers besides Tomcat 40 need to be tested and build scripts need
to be
> modified
> - currently this task relies on Ant 1.5's http condition. Perhaps we
> should work
> around that. Perhaps not.
> 
> 
> ----
> 
> Eventually I'd like to see a webserver plugin too. Then we could
install
> instance of both and have app server related requests be redirected to
> appservers. Or just quickly deploy a webserver instance to serve
static
> content
> from.
> 
> Other directions could include appserver having closer dependency to
> deploy and
> test related targets already in Maven. And then of course Cactus
> integration.
> 
> But, for now I submit this patch to you all for your perusal and
hopeful
> commit
> to source. If commited, expect me to make further patches.
> 
> Documentation is coming...in the meantime a quick scan at the Changes
to
> Control.vm, build.xml, and default.properties should be helpful.
> 
> Later dudes,
> 

Looks very cool. I'll try to have a close look this coming week end.
I'll also try to find some time to help. WRT Ant 1.5, Cactus has a
custom task that you could use to replace the http condition (while
we're waiting for Ant 1.5 to be mainstream). We could easily implement
that very simple task in Maven to guarantee Ant 1.4 support.

Thanks!
-Vincent

> -Peter
> 
> P.S.
> The attached contains a file called build-appserver-proxy.xml. Please
put
> that
> in the j2ee plugin directory. The 'conf' dir is a new dir in the
'j2ee'
> dir. The
> rest hopefully is obvious.



--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to