|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object smbdav.AbstractHandler smbdav.DefaultGetHandler
Default implementation of a handler for requests using the HTTP GET method.
In addition to providing standard GET functionality for resources, this implementation provides directory listings for collections. An XSL stylesheet can be specified to customize the appearance of the listing. The default stylesheet location is provided in the Davenport servlet's deployment descriptor as the "directory.xsl" initialization parameter, i.e.:
<init-param> <param-name>directory.xsl</param-name> <param-value>/mydir.xsl</param-value> </init-param>
The stylesheet location is resolved as follows:
ServletContext.getResourceAsStream()
).
ClassLoader.getResourceAsStream()
), using the
Davenport classloader, the thread context classloader, and the system
classloader (in that order).
If not specified, this is set to "/META-INF/directory.xsl
",
which will load a default stylesheet from the Davenport jarfile.
Users can also configure their own directory stylesheets. The configuration page can be accessed by pointing your web browser at any Davenport collection resource and passing "configure" as a URL parameter:
http://server/davenport/any/?configure
The configuration page can be specified in the deployment descriptor via the "directory.configuration" initialization parameter, i.e.:
<init-param> <param-name>directory.configuration</param-name> <param-value>/configuration.html</param-value> </init-param>
The configuration page's location is resolved in the same manner as the default stylesheet described above.
If not specified, this is set to "/META-INF/configuration.html
",
which will load and cache a default configuration page from the
Davenport jarfile.
Both the stylesheet and configuration page will attempt to load a resource appropriate to the locale; the loading order is similar to that used by resource bundles, i.e.:
directory_en_US.xsl
directory_en.xsl
directory.xsl
The client's locale will be tried first, followed by the server's locale.
Field Summary |
Fields inherited from interface smbdav.MethodHandler |
SC_FAILED_DEPENDENCY, SC_INSUFFICIENT_STORAGE, SC_LOCKED, SC_MULTISTATUS, SC_PROCESSING, SC_UNPROCESSABLE_ENTITY |
Constructor Summary | |
DefaultGetHandler()
|
Method Summary | |
void |
destroy()
Called by the Davenport servlet to indicate that the handler is being taken out of service. |
protected PropertiesBuilder |
getPropertiesBuilder()
Returns the PropertiesBuilder that will be used
to build the PROPFIND result XML document for directory listings. |
void |
init(javax.servlet.ServletConfig config)
Initializes the method handler. |
void |
service(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response,
jcifs.smb.NtlmPasswordAuthentication auth)
Services requests which use the HTTP GET method. |
Methods inherited from class smbdav.AbstractHandler |
checkConditionalRequest, checkLockOwnership, createSmbFile, getFilter, getLockManager, getPrincipal, getRequestURICharset, getRequestURL, getServletConfig, getSmbFile, getSmbURL, getSmbURL, rewriteURL |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public DefaultGetHandler()
Method Detail |
public void init(javax.servlet.ServletConfig config) throws javax.servlet.ServletException
AbstractHandler
ServletConfig
object and makes it available
via the getServletConfig
method. Subclasses overriding
this method should start by invoking
super.init(config);
init
in interface MethodHandler
init
in class AbstractHandler
config
- a ServletConfig
object containing
the servlet's configuration and initialization parameters.
javax.servlet.ServletException
- If an error occurs during initialization.public void destroy()
MethodHandler
Servlet
destroy
method. This method
gives the handler an opportunity to clean up any resources that
are being held. After this method has been called, the
service
method will not be invoked again.
destroy
in interface MethodHandler
destroy
in class AbstractHandler
public void service(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, jcifs.smb.NtlmPasswordAuthentication auth) throws javax.servlet.ServletException, java.io.IOException
SmbDAVUtilities
. For collection resources, the
collection listing is retrieved as from a PROPFIND request with
a depth of 1 (the collection and its immediate contents). The
directory listing stylesheet is applied to the resultant XML
document.
service
in interface MethodHandler
service
in class AbstractHandler
request
- The request being serviced.response
- The servlet response.auth
- The user's authentication information.
javax.servlet.ServletException
- If an application error occurs.
java.io.IOException
- If an IO error occurs while handling the request.protected PropertiesBuilder getPropertiesBuilder()
PropertiesBuilder
that will be used
to build the PROPFIND result XML document for directory listings.
PropertiesBuilder
used to build the
XML document.
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |