I am running several application servers on different ports, using
Apache's mod_proxy to put them all in the same URL space, like:

 http://toms.net/bea/ => http://toms.net:7001/
 http://toms.net/sssw/ => http://toms.net:1085/
 http://toms.net/ri/ => http://toms.net:1086/

etcetera, using proxy_pass and proxy_pass_reverse.

The problem is, there seems to be no way to make struts form actions
either relative or fully absolute- that is, assuming a war & jsp like:

 http://toms.net:7001/strutsWar/test.jsp

which is called from the browser by:

 http://toms.net/bea/strutsWar/test.jsp

an action will be generated like this:

 /strutsWar/test.jsp

which is not going to work.  Several alternatives would work -

 action="test.jsp"

would be OK because the browser would make it the same /bea/strutsWar
path, which would still proxy.

 action="../strutsWar/test.jsp"

would be OK because the browser would again make a correct relative link.

 action="http://toms.net:7001/strutsWar/test.jsp";

would be more correct, but would not really work, since one of the
purposes for mapping everything under proxy_pass is to make everything
available on port 80 because of firewalls.

It seems incongruous, given the the <html:base/> tag exists, specifically
to MAKE relative links work, not to have a way to make a form action point
to a relative link!

The absolute linke, action="/strutsWar/test.jsp", is never going to work,
because the browser doesn't send the /bea part that the proxy keys off,
and it also doesn't send the request on port 7001, where the appserver is.

Shouldn't there be a way to make a form action generate a relative link?

Or am I just missing it and/or ignorantly not reading the right part of
the documentation?

-Tom



--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to