We are trying to interface Xerlin with the open source
eXist XML database, which provides WebDAV access to
collections as an alternative to programmatic access
via a database API. However, eXist's WebDAV server only
complies with WebDAV Class 1 (i.e. all MUST
requirements but no locking support).
It appears that setting Xerlin's the webdav.timeout
property to -1 bypasses locking, in which case
communication with a Class 1 server should be possible.
However, the DAVServer.getDAVServer() method does not
appear to support connecting to a Class 1 WebDAV Server
-- it returns the message "Server does not support
required WebDAV level 2" with flags set to
"DAV_LOCKS_NOT_SUPPORTED". Aside from the obvious lack
of lock management, are there any other side effects
that would ensue from allowing Xerlin to connect to a
Class 1 server through the DAVServer class?
Regards,
Carl
Logged In: YES
user_id=577796
Hi Carl - code reads like this:
try {
if (isDav < 2) { // We require dav level 2 (i.e.
including locks)
int flags = DAVException.DAV_NO_LOCKS_SUPPORTED;
if (isDav < 1)
flags |= DAVException.DAV_NOT_SUPPORTED;
throw new DAVException(
"Server does not support required
WebDAV level 2", root
.getWebdavResource().getStatusCode(), flags);
}
} catch (HttpException e) {
throw new IOException("Bad mojo");
}
So it looks like it's just the locking.
Regards,
Justin.