Thanks for taking the time to explain this. For now I'll continue to use the targets in the source but at somepoint I'll try rolling my own.
Scott -----Original Message----- From: Eddie O'Neil Sent: Wednesday, March 16, 2005 7:18 AM To: Beehive Developers Subject: Re: Proper way to build a webapp from a dist? Scott-- We've intentionally removed the deployment Ant from the distribution. The approach is that the deployment of your application is something that's best left to the developer for two reasons: 1) every deployment environment is different. Capturing everyone's deployment requirements in general-purpose targets is going to be hard, but if we ship them, those requirements will come. 2) this requires supporting deployment of lots of various project types (webapp, EAR, web service, etc) on lots of different servers. This is hard to test (and if it's in the distribution, we are shipping it, so presumably it needs to be tested). In addition, Beehive becomes responsible for tracking API / shell script changes across different servers. In general, a container's documentation is pretty good at providing snippets of code / Ant / shell script that does deployment. And, I'd rather have that be source of record than the try to make Beehive Ant scripts the source of record. Several links are included below. It's also the case that other OSS web frameworks don't ship deploy/undeploy/redeploy/start/stop code with their distributions. Neither Struts, Spring, nor SiteMesh (among lots of others) ship Ant to perform these tasks with the server. In the case of Struts, SiteMesh, and other webapp frameworks, the samples can be built into a .war file (or are just shipped that way), and deploying this into Tomcat (for example) is just a matter of starting the server and copying the .war into <tomcatHome>/webapps. One thing that would help this is if there was a section of the Wiki that pointed to the various deployment documentation for supported server versions. Then, the community could help keep that page up-to-date with links to container documentation, tips / tricks, code snippets, etc. If there's enough momentum behind shipping this Ant with the distribution, then we should discuss it, but I think that this is more complicated than just shipping the Ant files we have in the SVN tree. Any other thoughts? Hope that helps. Eddie Tomcat deployment: http://jakarta.apache.org/tomcat/tomcat-5.0-doc/manager-howto.html#Execu ting%20Manager%20Commands%20With%20Ant Geronimo deployment: http://wiki.apache.org/geronimo/Deployment#head-327a55f82dc6818877a68e37 b722bb7f2360b633-3 WebLogic deployment: http://e-docs.bea.com/wls/docs90/deployment/deploy.html#1020516 JOnAS deployment: http://jonas.objectweb.org/current/doc/Deployer.html#Deployer-Deployment WAR http://jonas.objectweb.org/current/doc/Deployer.html#Deployer-Deployment EAR Scott Semyan wrote: > Right. That's what I'm saying. Those targets only exist in the source > tree. Do we have any plans to make them available in the build scripts > in the distributions? It sure would be handy for people... > > Scott > > -----Original Message----- > From: Patrick Osborne > Sent: Tuesday, March 15, 2005 6:36 PM > To: Beehive Developers > Subject: Re: Proper way to build a webapp from a dist? > > > I personally use the targets in the beehive source tree for working > with the server and the distribution for the webapp bits. > > Patrick. > > > > Scott Semyan wrote: > > >>I'm talking about deploying the app to the server. >> >>-----Original Message----- >>From: Patrick Osborne >>Sent: Tuesday, March 15, 2005 6:04 PM >>To: Beehive Developers >>Subject: Re: Proper way to build a webapp from a dist? >> >> >>Are you talking about "deploying" the webapp to the server or >>"deploying" the beehive jars into the webapp lib dir? >> >><dist home>/ant/beehive-runtime.xml handles copying the jars into the >>webapp but not removing them. >> >>Patrick. >> >>Scott Semyan wrote: >> >> >> >> >>>Actually, the deploy and undeploy targets still appear in the >>>Beehive/ant/buildWebapp.xml but I don't think they exist in the >>>distribution. It would be cool if they did... >>> >>>Scott >>> >>>-----Original Message----- >>>From: Scott Semyan >>>Sent: Tuesday, March 15, 2005 5:37 PM >>>To: Beehive Developers >>>Subject: RE: Proper way to build a webapp from a dist? >>> >>>Got it working now. Thanks. It looks like there is no deploy target >>>anymore. This is too bad since hitting the web page everytime you >>>want > > >>>to deploy is kind of a pain... >>> >>>Scott >>> >>>-----Original Message----- >>>From: Jeremiah Johnson >>>Sent: Tuesday, March 15, 2005 4:33 PM >>>To: Beehive Developers >>>Subject: RE: Proper way to build a webapp from a dist? >>> >>>I believe that this is what is currently the proper way: >>> >>>1. Copy build.properties and build.xml from >>><BEEHIVE_HOME>/samples/netui-blank/WEB-INF/src to your WEB-INF/src >>>directory (where <BEEHIVE_HOME> is the root of your distribution). >>>2. Edit your copy of build.properties to correctly set the value of >>>beehive.home=<BEEHIVE_HOME> (again, where <BEEHIVE_HOME> is the root >>>of >>> >>> >> >> >> >> >>>your distribution). You can use beehive.home=${os.BEEHIVE_HOME} if >>>you >>> >>> >> >> >> >> >>>have the BEEHIVE_HOME environment variable set to the root of the >>>distribution. >>>3. Edit your copy of build.xml to set the contextPath property. >>>4. ant build war >>> >>>In the case of the Pet Store, you can find the build.xml scripts in >>>the >>> >>> >> >> >> >> >>>WEB-INF/src there as well. You probably won't need to update any of >>>the files to build the Pet Store since it is within distribution. >>>Note >>> >>> >> >> >> >> >>>that petstoreWeb.war is deposited at <BEEHIVE_HOME>/samples if you >>>use > > >>>'ant build war'. >>> >>>- jeremiah >>> >>>-----Original Message----- >>>From: Scott Semyan >>>Sent: Tuesday, March 15, 2005 5:21 PM >>>To: Beehive Developers >>>Subject: Proper way to build a webapp from a dist? >>> >>>What is the proper way to build a web app from a distribution? I >>>can't > > >>>find any ant scripts for the Petstore app (for example) when I >>>generate >>> >>> >> >> >> >> >>>a distribution. I know I can use the script from the svn enlistment >>>but >>> >>> >> >> >> >> >>>it seems a distribution should be standalone. >>> >>>Scott Semyan >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> >> >> >> >> >> > > > >
