I agree that prohibitting PATH_INFO for extension mapped servlets is not
good.  But, a lot of people have been throwing things like "this violates
the HTTP specification" or "this violates the HTML specification".  Would
someone please show me where either of these specifications makes any
mention of PATH_INFO?

PATH_INFO is a CGI concept and CGI is a finalist for the least specified
specification award.

Also, the CGI specification does not describe any methods for mapping URLs
to CGI applications, this is a function of the Web server, so it doesn't
really help much in the debate over how PATH_INFO should be treated with
extension mappings vs. prefix mappings.  That said, what little information
is provided in the specification would lend credence to the side (my side,
actually) that PATH_INFO should be available in either case.  Here's the
section on the PATH_INFO environment variable:

-------
-  PATH_INFO

The extra path information, as given by the client. In other words, scripts
can be accessed by their virtual pathname, followed by extra information at
the end of this path. The extra information is sent as PATH_INFO. This
information should be decoded by the server if it comes from a URL before it
is passed to the CGI script.
-------

Since this stuff has *nothing* to do with HTTP or HTML, the servlet
specification is free to specify what getPathInfo() returns however it
pleases.  The examples provided on this thread provide good reasons why the
existing specification is lacking and I think it should be changed.  Lets
just understand why it needs changed and not through non-existent
specification violation claims.

Marc Saegesser

> -----Original Message-----
> From: Christopher Cain [mailto:[EMAIL PROTECTED]]
> Sent: Monday, October 01, 2001 1:04 AM
> To: [EMAIL PROTECTED]
> Subject: Re: SCRIPT_NAME and PATH_INFO with extension mapping
>
>
> Quoting Jon Stevens <[EMAIL PROTECTED]>:
>
> > I'm a member of JSR-053. I will work to change it for the next release
> > of the spec.
>
> Cool. From what I've heard, the entire TC developer community is
> behind you
> 100%. Hell, even Costin agrees with you ... now *that's* truly a
> red letter day
> =)
>
> > Needless to say, this has a serious impact on Turbine's ability to
> > function.
> > It is complete bullshit that it works fine if defined through a servlet,
> > but not with extension mapping.
> >
> > This works:
> > http://www.foo.com/context/servlet/Turbine/template/Foo.vm
> >
> > This doesn't:
> > http://www.foo.com/context/Foo.vm/bar/ack
> >
> > As a result, there is no way for Turbine to work properly with
> > extension mapping because it relies on passing information in the
> > PATH_INFO and not QUERY_STRING because of the need for search
> > engines to be able to archive website information.
>
> That sucks, bro. I empathize. I don't know that much about Turbine, to be
> honest, but would my proposed change to respecting the HTML spec
> for static
> content help out with the second case above? I know it's not
> really static, but
> if it's outside of the explicit servlet area, would it fall under
> the auspices
> of the servlet behavior or the static behavior? Or am I just
> reaching for a
> loophole? :)
>
> - Christopher
>
> /**
>  * Pleurez, pleurez, mes yeux, et fondez vous en eau!
>  * La moitié de ma vie a mis l'autre au tombeau.
>  *    ---Corneille
>  */

Reply via email to