2

I am running tomcat 6.0, and am having trouble configuring it to do what I want...

I have two web apps, call them X and Y, deployed as X.war and Y.war. Each has a servlet called blah.

So I can access them like so: http://server/X/blah http://server/Y/blah

What I want to do is pretend they are one web application Z, and be able to do this:

http://server/Z/X/blah --> as if I'd gone to http://server/X/blah

http://server/Z/Y/blah --> as if I'd gone to http://server/Y/blah

So I changed the (catalina_home)/conf/Catalina/localhost/X.xml as follows: < context override="true" path="/Z/X" reloadable="false" >

However that didn't work out; when going to http://server/Z/X/blah I get "The requested resource (/Z/X/blah) is not available."

Where am I going wrong?

akaioi
  • 139
  • 1
  • 1
  • 2

2 Answers2

2

An alternate way to do this would be to setup tomcat behind apache via ajp. Then, use mod_proxy_ajp to map the http://server/Z/ to ajp://server/ instead.

sybreon
  • 7,357
  • 1
  • 19
  • 19
2

If you add the Context within server.xml it will work as you want.

<Context docBase="x" path="/z/x" reloadable="true"  />

This approach is not recommended by the Tomcat docs, since any changes to server.xml means restarting the server disturbing all the web apps.

But, on the flip side, the practice of keeping this as you want in Catalina_Home/conf/Catalina/localhost/context.xml has some unreliabilities as others have reported.

See https://stackoverflow.com/questions/4032773/why-does-tomcat-replace-context-xml-on-redeploy and

Why does tomcat like deleting my context.xml file?

JoseK
  • 455
  • 6
  • 13
  • Hi, Can you check out this question regarding redirection : http://stackoverflow.com/questions/33388020/apache-tomcat-permanent-redirect-not-working – We are Borg Oct 28 '15 at 10:26