-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Eugene,

Eugene Wong wrote:
> I have this foo.war created using netbeans and deployed to 2 apps in Tomcat,
> namely fooTest and fooProduction. So I made 2 copies and renamed them to
> fooTest.war and fooProduction.war and made changes to
> \conf\Catalina\localhost\fooTest.xml and fooProduction.xml

Why not just put a context.xml into each WAR file and make them
self-contained?

> So we have 2 apps which can be accessed from
> http://localhost:8080/fooTest and 
> http://localhost:8080/fooProduction
> 
> Both apps run fine except for links which we hardcoded in our source, like
> window.location = '/foo/logout.jsp';. Is there a way to config these apps to
> redirect to their corresponding subdirectory when Tomcat see path the /foo ?
> Any help would be great, thanks.

You need to stop using hard-coded paths. Or, rather, you need to stop
hard-coding the /context path/. If you are using straight-up JSP, you
need to do this to all your URLs:

Change:
<a href="/foo/logout.jsp">

To this:
<a href="<%= request.getContextPath() %>/logout.jsp">

While you're at it, you should be doing this:

<a href="<%= request.getContextPath() %>
         <%= response.encodeURL("/logout.jsp") %>">

This allows the container to encode the user's session id into the URL
so that users without cookies can still use sessions through your app.

Another option is to use one of the dozen or so competing tag libraries
to generate URLs for you. You generally do something like this:

<taglib:link href="/logout.jsp">log out</taglib:link>

...or something along those lines, and you get a link that uses the
correct context path (which could even be the root) and properly encodes
the URL for session-id tracking, too.

I know (or think I know?) that JSF, Struts, and a handful of other tag
libraries exist to do this stuff for you.

If you are using something other than JSP, you can use similar
direct-use of the API or similar tools (for instance, Velocity has
Velocity-tools, which can do all this, too).

- -chris
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFF/1D39CaO5/Lv0PARAuQBAJ9V9+K7X90QHmUK/G8lPKLkpaWEOACfb2Zp
9IkdsowRkxWspRjEXbnTq0s=
=GFR/
-----END PGP SIGNATURE-----

---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to