tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Milt Epstein <>
Subject Re: URL patterns + directory listings
Date Fri, 20 Sep 2002 13:52:47 GMT
On Fri, 20 Sep 2002, adi wrote:

> Hello,
> I encountered a very strange problem with servlet mappings.
> I have the following entry in my web.xml file :
> <servlet>
>     <servlet-name>MyDefaultServlet</servlet-name>
> <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
>     <init-param>
>       <param-name>debug</param-name>
>       <param-value>0</param-value>
>     </init-param>
>     <init-param>
>       <param-name>listings</param-name>
>       <param-value>true</param-value>
>     </init-param>
>   </servlet>
>  <servlet-mapping>
>     <servlet-name>MyDefaultServlet</servlet-name>
>     <url-pattern>/admin/*</url-pattern>
>   </servlet-mapping>
> All I am doing here is passing all requests to the 'admin' directory
> and its children to the default servlet with listings=true.  A

Well, that's not really what you're doing.  The "admin" in your
url-pattern is a virtual directory in the URL space that bears no
connection to any real directory, and if there's also a real directory
named "admin", that's just a coincidence (an unfortunate confusing one

> simple trick to allow listings on specific directories.  The problem
> is that when I point the browser to:
> http://localhost/MyContext/admin/
> I get the listings for http://localhost/MyContext/

That sounds like the right behavior to me.

> Now, If I point the browser to http://localhost/MyContext/admin/admin/
> ... I get the listings for the right directory.

Well, you're not clearly indicating what's the "right directory", but
I'm guessing you have a subdirectory admin under your MyContext.
Again, this behavior sounds right to me for what you have set up above.

> Any idea whats going on ?

It's working as you have it set up?  And that doesn't match what you
want because you don't fully understand this stuff?  (Don't worry,
most don't :-).

Why don't you say more clearly what you want to do, and perhaps
someone can comment on that.

> And more than that:
> If I change the pattern from /admin/* to /admin/
> Everything works fine but than mapping will not kick off for
> sub-directories of 'admin'

That's because URLs you're using to reach the sub-directories of admin
no longer match the url-pattern (without the '*').  Again, this sounds
like the right behavior to me.

Milt Epstein
Research Programmer
Integration and Software Engineering (ISE)
Campus Information Technologies and Educational Services (CITES)
University of Illinois at Urbana-Champaign (UIUC)

To unsubscribe, e-mail:   <>
For additional commands, e-mail: <>

View raw message