> -----Original Message-----
> From: Steve Weiss [SMTP:[EMAIL PROTECTED]]
> Sent: Friday, October 20, 2000 4:04 AM
> To: [EMAIL PROTECTED]
> Subject: Re: Pb with session
>
> Kitching Simon wrote:
> >
> > [Kitching Simon]
> > Hmm, yes I see.
> >
> > If a browser requests a URL, and gets back a page containing
> > relative paths in it (eg to jsp files, or anchors/links), then
> the
> > browser is going to resolve those relative paths into absolute
> > paths before issuing a request to the web server; the browser
> > will use the *original* URL to resolve these relative paths
> with,
> > because it doesn't know that the original URL actually did an
> > internal forward operation.
> >
> > This is not too bad if a jsp is called via only one controlling
> > servlet, because all urls in the jsp can be set to be relative
> > to the calling servlet. But if a jsp can be called from multiple
> > controlling servlets, it has a problem.
> >
> > Is there a method that returns the original URL that the
> > calling browser requested, even if the request has been
> > forwarded? If so, then everywhere you output a path in
> > a jsp, you could call a function which converts from
> > relative-to-jsp into relative-to-original-url. However, this
> > really isn't a nice solution.
> >
> > This kind of thing is going to occur all the time when using the
> > MVC approach for designing websites. I wonder how STRUTS
> > solves this problem?
>
> I'm not quite sure that I follow the problem being described, but I'm
> using the MVC pattern without problems. If you want to display a link in
> a JSP which is displayed as a result of a forward from a controller
> servlet, you can use something like this:
>
> <%= request.getContextPath() + "/servlet/myServlet" %> or
> <%= request.getContextPath() + "/jsp/foo.jsp" %>
>
[Kitching Simon]
Yes, but you're always using absolute URLs.
Suppose you want, for example, to have an
"images" directory as a *subdirectory* of the jsp
directory.
You could always write your URLs for <image>
tags as "/jsp/images/xyz.jpg", in which case you don't
have the problem listed above. However, you *do* have
the problem that if you rename your jsp directory to
"myfiles" or somesuch, you have to change *every*
string "/jsp/images/..." to "/myfiles/images/...".
Using relative paths to images would not require any
URL changes when you change directory names,
eg "./images/xyz.jpg" (note leading dot) is still correct
after renaming directory "jsp" to "myfiles". But you
run smack into the problem described above....
Regards,
Simon
> --
> Steve Weiss Association of American Medical Colleges
> (202)828-0428 mailto:[EMAIL PROTECTED] http://www.aamc.org