Deploying my application at the root in Tomcat
I have the war file of my application. I need to deploy this at the root level. The current URL is http://localhost:8080/war_name/application_name
.
Solution 1:
You have a couple of options:
Remove the out-of-the-box
ROOT/
directory from tomcat and rename your war file toROOT.war
before deploying it.-
Deploy your war as (from your example)
war_name.war
and configure the context root inconf/server.xml
to use your war file :<Context path="" docBase="war_name" debug="0" reloadable="true"></Context>
The first one is easier, but a little more kludgy. The second one is probably the more elegant way to do it.
Solution 2:
on tomcat v.7 (vanilla installation)
in your conf/server.xml add the following bit towards the end of the file, just before the </Host>
closing tag:
<Context path="" docBase="app_name">
<!-- Default set of monitored resources -->
<WatchedResource>WEB-INF/web.xml</WatchedResource>
</Context>
Note that docBase attribute. It's the important bit. You either make sure you've deployed app_name before you change your root web app, or just copy your unpacked webapp (app_name) into your tomcat's webapps folder. Startup, visit root, see your app_name there!