hi,

i have an issue when using the following servlet mapping and DefaultServlet:

<servlet-mapping>
   <servlet-name>default</servlet-name>
   <url-pattern>/images/*</url-pattern>
</servlet-mapping>

<servlet-mapping>
   <servlet-name>dispatcher</servlet-name>
    <url-pattern>/</url-pattern>
</servlet-mapping>

my goal is to have specific directories served by DefaultServlet and then
everything else to be served by my servlet.

however, the way that DefaultServlet is implemented seems to make this
impossible, since it uses request.getPathInfo() to get the path of the file.

for the above mapping, if i request '/images/pic.gif', then the PathInfo
would be '/pic.gif'. since that file lives in '/images/pic.gif', i get a
404.

i can't really think of any useful case where it makes sense for
DefaultServlet to only consider PathInfo. (there might be a case where you
wanted to serve the same resource via the DefaultServlet and another
servlet, but i would imagine thats pretty uncommon.)

i think it makes more sense to use ServletPath + PathInfo instead. making
this change won't affect the standard usage of DefaultServlet because in
that case PathInfo is null and it falls back to using ServletPath anyways.
and for all other cases, DefaultServlet is kind of useless, so i doubt it
would affect anyone.

--Alex
-- 
View this message in context: 
http://www.nabble.com/DefaultServlet---PathInfo-tf3729771.html#a10439910
Sent from the Tomcat - Dev mailing list archive at Nabble.com.


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

Reply via email to