Hi Craig, All of this is really informative and very useful, thanks for taking the time.
Cheers, Bryan > -----Original Message----- > From: Craig R. McClanahan [mailto:craigmcc@;apache.org] > Sent: Wednesday, October 23, 2002 7:01 PM > To: Tomcat Users List > Subject: Re: Manager? > > > > > On Wed, 23 Oct 2002, Bryan Dollery wrote: > > > Date: Wed, 23 Oct 2002 16:55:40 +1300 > > From: Bryan Dollery <[EMAIL PROTECTED]> > > Reply-To: Tomcat Users List <[EMAIL PROTECTED]> > > To: Tomcat Users List <[EMAIL PROTECTED]> > > Subject: Manager? > > > > Hi, > > > > Tomcat 4.1.12 question: > > > > 1. Install and Deploy manager functions - what's the difference? > > > > The documents mention something about deploy copying and > install not doing > > so, but I can't find any more information on this. I've looked > back through > > this list's archives and can't find any other mention of the > difference. > > > > Install "mounts" a WAR file or directory right where it currently sits, > with no copying. In effect, it dynamically creates a <Context> element > that has an absolute path for the "docBase" attribute. Because of this, > the WAR or directory must exist on the server that is running Tomcat. > Because no copying occurs, this can happen pretty quickly. > > Deploy uploads a WAR file to a private location within the Tomcat > directory hierarchy, and runs the webapp directly from there. Because of > this, you can deploy to a Tomcat running on a different server than where > you are. NOTE - The deploy command uses an HTTP "PUT" transaction, so > it's not usable directly from a browser. The easiest way to use > it, then, > is to utilize the custom Ant task that is provided. > > The deploy mechanism is designed for easy integration into tools. For > example, the "deploytool" GUI in the Java Web Services Developer > Pack uses > the deploy function behind the scenes for you. > > > 2. How does tomcat handle manager deployed files? > > > > Note that, in a properly designed webapp, you should not have to care > about this. But let's answer the questions for curiousity's sake. > > > If I deploy (manager deploy) a simple war file, with a single html page > > linking to a simple hello-world servlet it works fine. But, I > don't know > > what tomcat is doing with the contents of the war. > > > > I can see that the war itself is copied to the manager work > directory, and > > that the class files are unpacked. However, the html file, and > the web.xml > > file don't get unpacked. Does tomcat access these directly > from the war, > > and if so does it cache them? > > > > Tomcat is perfectly happy to run an application directly from a WAR file > if you want to. The classes and JARs have to be copied so that they are > accessible to the Java compiler utilized to convert your JSP pages into > servlets. All the other resources are accessed directly from the WAR. > > Note that exactly the same thing happens to a WAR file that you > put in the > webapps directory, if you turn the unpackWARs option off. > > One ramification of running directly from a WAR file *is* visible to your > webapps - the ServletContext.getRealPath() method will always > return null, > because there is no such thing as a "real path" to a resource embedded in > a WAR. To avoid any difficulty caused by this, you should always program > using ServletContext.getResource() and > ServletContext.getResourceAsStream() > if you need access to resources in the WAR. These calls are > guaranteed to > work portably on all servlet containers -- running from unpacked > directories > the way Tomcat does is a Tomcat specific feature, and is *not* defined in > the servlet specification. > > > Thanks for any answers you can provide. > > > > Cheers, > > > > Bryan > > Craig > > > -- > To unsubscribe, e-mail: > <mailto:tomcat-user-unsubscribe@;jakarta.apache.org> > For additional commands, e-mail: > <mailto:tomcat-user-help@;jakarta.apache.org> > > -- To unsubscribe, e-mail: <mailto:tomcat-user-unsubscribe@;jakarta.apache.org> For additional commands, e-mail: <mailto:tomcat-user-help@;jakarta.apache.org>
