pulse - the web application framework Get pulse at SourceForge.net. Fast, secure and Free Open Source software downloads Ohloh project report for pulse-java

org.torweg.pulse.webdav
Class WebDAVFilter

java.lang.Object
  extended by org.torweg.pulse.service.AbstractPulseFilter
      extended by org.torweg.pulse.webdav.WebDAVFilter
All Implemented Interfaces:
javax.servlet.Filter

public final class WebDAVFilter
extends AbstractPulseFilter

filters WebDAV related request (i.e. OPTIONS, PROPFIND) to the webapp's root.

This filter is necessary for clients like Microsoft Web Folders that require the WebDAV enabled resource to be in a base directory of the host and thus want to perform WebDAV related requests on the webapp's base.

However, even when using the filter Windows Vista will fail to connect to server using Basic authentication. It will not even display a login dialog. Vista requires SSL / HTTPS connection to be used with Basic. However you still can connect using Vista if you set the following registry key on a client machine:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters\ BasicAuthLevel to 2.

The BasicAuthLevel can be set to the following values:

To actually connect to the web folder use one of the following connect strings:

If you are still having problems to connect, you might need the "Software Update for Web Folders (KB907306)", which can be downloaded from Microsoft's website.

Version:
$Revision: 1822 $
Author:
Thomas Weber

Nested Class Summary
 
Nested classes/interfaces inherited from class org.torweg.pulse.service.AbstractPulseFilter
AbstractPulseFilter.WrappedResponse
 
Constructor Summary
WebDAVFilter()
           
 
Method Summary
 void destroy()
          actually does nothing.
 void doFilter(javax.servlet.ServletRequest servletRequest, javax.servlet.ServletResponse servletResponse, javax.servlet.FilterChain chain)
          filters for WebDAV related request to the webapp's root.
 void init(javax.servlet.FilterConfig conf)
          initialises the filter with the context name and the name of the WebDAV servlet (optional init-param named webdav-servlet-name, defaults to WEBDAV).
 
Methods inherited from class org.torweg.pulse.service.AbstractPulseFilter
getWebAppBasePath
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

WebDAVFilter

public WebDAVFilter()
Method Detail

init

public void init(javax.servlet.FilterConfig conf)
          throws javax.servlet.ServletException
initialises the filter with the context name and the name of the WebDAV servlet (optional init-param named webdav-servlet-name, defaults to WEBDAV).

Parameters:
conf - the filter configuration
Throws:
javax.servlet.ServletException - on errors extracting the name of the webapp
See Also:
Filter.init(javax.servlet.FilterConfig)

destroy

public void destroy()
actually does nothing.

See Also:
Filter.destroy()

doFilter

public void doFilter(javax.servlet.ServletRequest servletRequest,
                     javax.servlet.ServletResponse servletResponse,
                     javax.servlet.FilterChain chain)
              throws java.io.IOException,
                     javax.servlet.ServletException
filters for WebDAV related request to the webapp's root.

Parameters:
servletRequest - the request
servletResponse - the response
chain - the filter chain
Throws:
java.io.IOException - on errors
javax.servlet.ServletException - on errors
See Also:
Filter.doFilter(javax.servlet.ServletRequest, javax.servlet.ServletResponse, javax.servlet.FilterChain)