Thanks,
I will try to explain what I am trying to do.

My project directory structure is something like this:

MyContext/admin
MyContext/admin/config
MyContext/userdata
MyContext/userdata/user1
MyContext/userdata/user2


... I want to enable listing on admin and its subs
and disable listing on MyContext/
                             MyContext/userdata

I set the listings property on default servlet to false ( in
tomcat/conf/web.xml )

and now i want all patterns with admin in it to show listings.
What I tried to do is to create another default servlet, this time with
listings=true and to map it to all patterns with admin/*
I added this mapping in MyContext/WEB-INF/web.xml.
...but then I face this strange behaviour I described in the first mail
on this thread.

Even if this is not a good way to allow listings on certain directories
I realy want to understand why I get the listing for
http://localhost/MyContext/
when I point my browser to http://localhost/MyContext/admin/

Thanks again
Adi






-----Original Message-----
From: Milt Epstein [mailto:[EMAIL PROTECTED]]
Sent: Friday, September 20, 2002 2:53 PM
To: Tomcat Users List
Subject: Re: URL patterns + directory listings


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
perhaps).

> 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)
[EMAIL PROTECTED]


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


---
Incoming mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.372 / Virus Database: 207 - Release Date: 6/20/2002

---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.372 / Virus Database: 207 - Release Date: 6/20/2002


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

Reply via email to