Bill Barker wrote:
----- Original Message -----
From: "Remy Maucherat" <[EMAIL PROTECTED]>
To: "Tomcat Developers List" <[EMAIL PROTECTED]>
Sent: Thursday, July 10, 2003 11:29 PM
Subject: Re: [RFC] Handling the '*' URL



Bill Barker wrote:

This is really a Request-For-Comments, I'm not proposing anything.  I'm
looking into resolving Bug #21454.

At the moment, requests for e.g:
 OPTIONS * HTTP/1.1
 TRACE * HTTP/1.1
get properly handled by TC 5 (thanks to Keith's patch), buy passing them

to


DefaultServlet. However, the '*' URL is really a HTTP Protocol URL, so

it


seems to me that it really should be handled by the Connector instead of

the


Servlet.  On the other hand, we have access to the rich Servlet-API
implementations (Ok, so I don't in 3.3-land, but I can fake it ;-).  So

my


problem is that I can't see the correct route to go here.

Opinions?

I'm only talking about OPTIONS here. TRACE is protocol specific for all URLs (but I don't care about it ;-) ).

I think it should be handled by the servlet, because for example you can
replace the default servlet by the WebDAV servlet, and then it should
return the DAV methods.



At the moment (at least in TC 5, which is the only one that returns a 200
Response), this is handled by the Default-Servlet (which ever one is mapped
to '/', which defaults to DefaultServlet) in the ROOT Context.  So, the
current response according to you is still wrong if I have the the 'webdav'
Context installed.

<rfc-quote rfc="2616" section="9.2">
If the Request-URI is an asterisk ("*"), the OPTIONS request is intended to
apply to the server in general rather than to a specific resource. Since a
server's communication options typically depend on the resource, the "*"
request is only useful as a "ping" or "no-op" type of method; it does
nothing beyond allowing the client to test the capabilities of the server.
For example, this can be used to test a proxy for HTTP/1.1 compliance (or la
ck thereof).
</rfc-quote>

I'm starting to lean to putting this into the Connector, rather than sending
it to the Servlet (who can't possibly give a server-wide answer).  Note:
I'm only interested in the case where the Request-URI.equals("*").  All
other cases will go to the Servlet.

In my reasoning, I was implying that I had the asumption that the default servlet of the root context was a fair representation of what the server could do.


Both work for me :)

Remy


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



Reply via email to