https://issues.apache.org/bugzilla/show_bug.cgi?id=51294
--- Comment #19 from Charlie Hubbard <charlie.hubb...@gmail.com> --- The problem is deploying to ROOT context has only a handful of options and these options are difficult to use. And this is the most common context to deploy to. What we want is the ability to copy our war file up to a directory without manually manipulating it (ie renaming it, unpacking it, etc), copy a file to a path to map it to a context without having to modify a file owned by TC, and let tomcat unpack it for us. The only options we have right now are: 1. Rename our war file to ROOT.war and put it in the webapps folder. 2. Put the war file external to webapps, and put an application context descriptor file under Catalina/localhost to point to the external war mapping it to the root context. 3. The final option is to modify server.xml file to add the context mapping and put the external war file in there. Well the first option sucks and really the only one that works now because we can't keep our name and version information intact. No build process out there outputs ROOT.war so that's a manual step we have to perform to make this work. And you have do several steps on the server to make it work. You can't just use scp to copy the file up and restart. The second option sucks because TC will let you set the ROOT context using a file under Catalina/localhost, but it refuses to extract the war file because its an external war file. The third option sucks because you can't automate easily, but also suffers from external war file unpacking problem. And this is in bold to not do in the TC docs. What is left writing lots of specialized deployment code to force us to manually extract the war files ourselves. Why not just make the whole process straight forward? What are all of these features not uniform and straight forward? I don't think the problem is external vs internal unpacking. It's the whole freaking process of deploying a war file and mapping that onto a URL of our choosing without modifying the internals of TC or changing our output. What would be super straight forward and simple is. Copy the war file up to a folder (maybe webapps, any folder, etc), and deploy a config file (like a context file) that can map the war file to a URL including ROOT path, specify if a war file should be unpacked or not, redeploy, etc. Something like this: <Context url="" docBase="/opt/somepath/myspecialapp-1.0.war" unpack="true" redeploy="true" debug="1" privileged="true"/> Or relative to webapps <Context url="" docBase="myspecialapp-1.0.war" unpack="true" debug="1" priviledged="true"/> It just so straight forward it makes me want to cry that TC right now is so confusing with all of these terrible options we have. If you make the process straight forward the code will clean itself up because it's simple. I think TC has so many options for deployment that are worthless it made the code complex. It's just you took away one of the useful features for bad reasons. -- You are receiving this mail because: You are the assignee for the bug. --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org