Re: Using DefaultServlet for directory outside of webapps

2008-04-17 Thread Christopher Schultz

-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Jeff,

Zengfa Gao wrote:
| For our application, we want to list/show a list of
| gif files. Currently we are using DefaultServlet with
| listings=true (web.xml). As the result, we can list
| the names of the file, and open the gif file under the
| our.war directory.
|
| For security reason, we are trying to list/show gif
| under other directory, not the directory of our.war.
| Is any setting for us to redirectory DefaultServlet to
| look at other defined directory? For example, if we
| put files under /var/opt/ourshare directory, how can
| we do it?

DefaultServlet cannot (currently) be targeted at a directory other than
the root of the webapp. You could probably subclass DefaultServlet and
modify its behavior such that you could re-target it to another
directory using init-param elements or something like that.

It looks like the init() method of DefaultServlet grabs a
ProxyDirContext from the application scope. I'm guessing that's a JNDI
context that is rooted in the current application's webapp root. By
overriding init() (make sure you call super.init()!), you could probably
re-target the "resources" member to another directory, and simply leave
everything else alone.

Hope that helps,
- -chris
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.9 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iEYEARECAAYFAkgHd+EACgkQ9CaO5/Lv0PBxiQCfboZKcnDiYpow+m30LFLlkSpO
b0IAnAolLNXhaJIe7491fDmaQQUPxVBW
=XxJE
-END PGP SIGNATURE-

-
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: Using DefaultServlet for directory outside of webapps

2008-04-17 Thread Caldarale, Charles R
> From: Zengfa Gao [mailto:[EMAIL PROTECTED] 
> Subject: Using DefaultServlet for directory outside of webapps
> 
> Is any setting for us to redirectory DefaultServlet to
> look at other defined directory? For example, if we
> put files under /var/opt/ourshare directory, how can
> we do it?

The easiest way is to define another  with a docBase set to the
location of the external directory.  For example, place the following in
conf/Catalina/[host]/ourshare.xml:



You can then forward or redirect references to the images to
"/ourshare/[image].gif" and the DefaultServlet will handle them
properly.

 - Chuck


THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY
MATERIAL and is thus for use only by the intended recipient. If you
received this in error, please contact the sender and delete the e-mail
and its attachments from all computers.

-
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: Using DefaultServlet for directory outside of webapps

2008-04-17 Thread Zengfa Gao
Chuck,

This a great idea. Now I am trying for find where to
put ourshare.xml file.

We are using Tomcat under Jboss, I didn't find
conf\Catalina yet.

Thanks a lot!

Jeff

--- "Caldarale, Charles R"
<[EMAIL PROTECTED]> wrote:

> > From: Zengfa Gao [mailto:[EMAIL PROTECTED] 
> > Subject: Using DefaultServlet for directory
> outside of webapps
> > 
> > Is any setting for us to redirectory
> DefaultServlet to
> > look at other defined directory? For example, if
> we
> > put files under /var/opt/ourshare directory, how
> can
> > we do it?
> 
> The easiest way is to define another  with
> a docBase set to the
> location of the external directory.  For example,
> place the following in
> conf/Catalina/[host]/ourshare.xml:
> 
> 
> 
> You can then forward or redirect references to the
> images to
> "/ourshare/[image].gif" and the DefaultServlet will
> handle them
> properly.
> 
>  - Chuck
> 
> 
> THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR
> OTHERWISE PROPRIETARY
> MATERIAL and is thus for use only by the intended
> recipient. If you
> received this in error, please contact the sender
> and delete the e-mail
> and its attachments from all computers.
> 
>
-
> To start a new topic, e-mail:
> users@tomcat.apache.org
> To unsubscribe, e-mail:
> [EMAIL PROTECTED]
> For additional commands, e-mail:
> [EMAIL PROTECTED]
> 
> 



  

Be a better friend, newshound, and 
know-it-all with Yahoo! Mobile.  Try it now.  
http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ

-
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Using DefaultServlet for directory outside of webapps

2008-04-21 Thread NBW
You could write a simple servlet to serve up these images from any
accessible file system. The URL for it would look something like this:

http://yourtomcatserver/yourwebappcontext/getImage?name=Foo.gif

The the servlet would know what directory to look for images in and handle
streaming them out to the client. That would be a very flexible way of
solving the problem.

On Thu, Apr 17, 2008 at 11:48 AM, Zengfa Gao <[EMAIL PROTECTED]> wrote:

> Hi,
>
> For our application, we want to list/show a list of
> gif files. Currently we are using DefaultServlet with
> listings=true (web.xml). As the result, we can list
> the names of the file, and open the gif file under the
> our.war directory.
>
> For security reason, we are trying to list/show gif
> under other directory, not the directory of our.war.
> Is any setting for us to redirectory DefaultServlet to
> look at other defined directory? For example, if we
> put files under /var/opt/ourshare directory, how can
> we do it?
>
> Thanks a lot!
>
> Jeff
>
>
>
>  
> 
> Be a better friend, newshound, and
> know-it-all with Yahoo! Mobile.  Try it now.
> http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ
>
> -
> To start a new topic, e-mail: users@tomcat.apache.org
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>