You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by Remy Maucherat <re...@exoffice.com> on 2000/04/30 00:59:12 UTC

[Catalina] WebDAV methods

Your latest patch fixed the 304 error. Static stuff now works great !!

Using the following mapping in the web.xml file, I'm able to load my DAV
servlet on startup :
  <servlet>
    <servlet-name>webdav</servlet-name>
    <servlet-class>org.exolab.slide.webdav.Webdav</servlet-class>
    <load-on-startup>1</load-on-startup>
    <init-param>
      <param-name>debug</param-name>
      <param-value>99</param-value>
    </init-param>
  </servlet>

  <!-- The mapping for the webdav servlet -->
  <servlet-mapping>
    <servlet-name>webdav</servlet-name>
    <url-pattern>/dav/*</url-pattern>
  </servlet-mapping>

It works !!!! I mean : the servlet loads on startup, as expected.
Note : I don't use the Catalina / Tomcat logging facility, but I will soon
:-)

However, in case Catalina gets a request using an OPTIONS HTTP method, my
servlet is not invoked (although the Wrapper seems to be invoked), so DAV
functionality though IE doesn't work yet. I'll look into that problem later
today, if you don't mind.
You can see it working using a standard browser, though. It works with DAV
Explorer, though.
Go to http://24.12.46.10:8080/dav/

Remy


Re: [Catalina]

Posted by "Craig R. McClanahan" <Cr...@eng.sun.com>.
Remy Maucherat wrote:

> Good news, my servlet works very well.
>
> Some comments and questions :
> - InputStream and OutputStream performance is really slow (I suppose it's
> because there're not buffered yet), but they work.

For input stream buffering, my feeling is that it's the Connector's
responsibility to provide that (because it might be serving out of a byte array,
and buffering inside the core servlet container would be wasteful).  I will
modify the existing HTTP Connector, which is really a placeholder until we have
a full-featured HTTP/1.1 implementation available (work in progress).

For output, the response itself is responsible for providing buffering.  Until
my last check-in last night I was defaulting to a 1-byte buffer.  Now, it
defaults to 2048 (and the servlet can make it bigger if they want).

>
> - I saw that basic authentication support is implemented. Has it been tested
> ?

Haven't tried it yet ... but the implementation architecture is so much simpler
than the way it works in Tomcat 3.1 that repairing any bugs should be easy :-).

>
> - The servlet invoker works for basic stuff :-) Didn't test anything complex
> yet.
>

Likewise .. it serves the examples but I haven't tried to stress it's
functionality yet.

>
> Remy
>

Craig



mod_jk

Posted by Eugen Kuleshov <an...@hco.kollegienet.dk>.
Hello!

  Where can I find makefile and sample config files for mod_jk for
Apache 1.3 and 2.0?

  Also I would like to use JNI connector with Apache 2.0. Is it
possible?

  Eugen Kuleshov.

Re: [Catalina]

Posted by ma...@mjwilcox.com.
On 29 Apr 00, at 23:59, Remy Maucherat wrote:


> - I saw that basic authentication support is implemented. Has it been tested
> ?
Sort of ;). I've tested it out and have even written my own 
interceptor for a book on Java Server Pages. We had a nice 
discussion about this whole topic a couple of weeks ago (i'm not 
sure I figured out what the consensus was ;). 

So I guess the answer is "yes it works", but it could work better. I 
think most of the time we're going to default to whatever the Web 
server does, but we still need some mechanism to reliably get 
authentication information from teh Web server.

Mark
> - The servlet invoker works for basic stuff :-) Didn't test anything complex
> yet.
> 
> Remy
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tomcat-dev-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tomcat-dev-help@jakarta.apache.org
> 
> 
> 



[Catalina]

Posted by Remy Maucherat <re...@exoffice.com>.
> > Your latest patch fixed the 304 error. Static stuff now works great !!
> >
>
> Cool!

Yep !

> I just fixed a bug in the getPathInfo() that your servlet would have
received
> when actually invoked.  It should work better now.

It does.

> > However, in case Catalina gets a request using an OPTIONS HTTP method,
my
> > servlet is not invoked (although the Wrapper seems to be invoked), so
DAV
> > functionality though IE doesn't work yet. I'll look into that problem
later
> > today, if you don't mind.
>
> There is nothing in Catalina itself that should care about which HTTP
method
> was used.  There might be something inside javax.servlet.http.HttpServlet
> itself that is swallowing them.  At the moment, I've left a log() call
active
> inside StandardWrapperValve that will log the HTTP method and request URI
it's
> using, just before calling the service() method of the servlet.  That
should
> help determine where the problem lies.

... with my code ;-)
Well, it's not 100% accurate, it actually was a problem dealing with the way
I handle paths. Anyway, I figured it out thanks to the enhanced logging
(basically, my wrapper was not invoked, because MS WebFolders have the
annoying tendency of modifying URLs behind your back ...).

> > You can see it working using a standard browser, though. It works with
DAV
> > Explorer, though.
> > Go to http://24.12.46.10:8080/dav/

Good news, my servlet works very well.

Some comments and questions :
- InputStream and OutputStream performance is really slow (I suppose it's
because there're not buffered yet), but they work.
- I saw that basic authentication support is implemented. Has it been tested
?
- The servlet invoker works for basic stuff :-) Didn't test anything complex
yet.

Remy


Re: [Catalina] WebDAV methods

Posted by "Craig R. McClanahan" <Cr...@eng.sun.com>.
Remy Maucherat wrote:

> Your latest patch fixed the 304 error. Static stuff now works great !!
>

Cool!

>
> Using the following mapping in the web.xml file, I'm able to load my DAV
> servlet on startup :
>   <servlet>
>     <servlet-name>webdav</servlet-name>
>     <servlet-class>org.exolab.slide.webdav.Webdav</servlet-class>
>     <load-on-startup>1</load-on-startup>
>     <init-param>
>       <param-name>debug</param-name>
>       <param-value>99</param-value>
>     </init-param>
>   </servlet>
>
>   <!-- The mapping for the webdav servlet -->
>   <servlet-mapping>
>     <servlet-name>webdav</servlet-name>
>     <url-pattern>/dav/*</url-pattern>
>   </servlet-mapping>
>
> It works !!!! I mean : the servlet loads on startup, as expected.
> Note : I don't use the Catalina / Tomcat logging facility, but I will soon
> :-)
>

I just fixed a bug in the getPathInfo() that your servlet would have received
when actually invoked.  It should work better now.

>
> However, in case Catalina gets a request using an OPTIONS HTTP method, my
> servlet is not invoked (although the Wrapper seems to be invoked), so DAV
> functionality though IE doesn't work yet. I'll look into that problem later
> today, if you don't mind.

There is nothing in Catalina itself that should care about which HTTP method
was used.  There might be something inside javax.servlet.http.HttpServlet
itself that is swallowing them.  At the moment, I've left a log() call active
inside StandardWrapperValve that will log the HTTP method and request URI it's
using, just before calling the service() method of the servlet.  That should
help determine where the problem lies.

>
> You can see it working using a standard browser, though. It works with DAV
> Explorer, though.
> Go to http://24.12.46.10:8080/dav/
>
> Remy
>

Craig