Gnome-VFS and self implemented WebDAV



Hi everyone,

I'm developing a WebDAV interface to a small document management system. The interface is implemented using Java and Apache JServ. I got it working quite well with cadaver, Microsoft DAV Client and KDE's kio, but I have problems with Nautilus and Gnome-VFS.

If I try to connect with Nautilus I have to enter username and password and then I get the following error message:

Nautilus has no installed viewer capable of displaying "http://dev130.netline.de/servlet/webdav.documents/";.

The network traffic looks like this.

<snip>

T 192.168.32.26:33791 -> 192.168.32.130:80 [AP]
  PROPFIND /servlet/webdav.documents HTTP/1.0..Host: dev130.netline.de:80..Ac
  cept: */*..User-Agent: gnome-vfs/2.2.5..Content-Length: 279..Depth: 0....<?
  xml version="1.0" encoding="utf-8" ?><D:propfind xmlns:D="DAV:" xmlns:ns100
  0="http://services.eazel.com/namespaces";><D:prop><D:creationdate/><D:getcon
  tentlength/><D:getcontenttype/><D:getlastmodified/><D:resourcetype/><ns1000
  :nautilus-treat-as-directory/></D:prop></D:propfind>
 
T 192.168.32.130:80 -> 192.168.32.26:33791 [AP]
  HTTP/1.1 401 Authorization Required..Date: Wed, 13 Aug 2003 12:44:21 GMT..S
  erver: Apache/1.3.26 (UnitedLinux) ApacheJServ/1.1.2 mod_webapp/1.2.0-dev m
  od_ssl/2.8.10 OpenSSL/0.9.6g mod_perl/1.27..WWW-Authenticate: Basic realm="
  SLOX WebDAV"..Set-Cookie: JServSessionIdroot=h7pmpu30y1; path=/..Connection
  : close..Content-Type: text/html....
 
T 192.168.32.130:80 -> 192.168.32.26:33791 [AP]
  <html>.<head>.<title>.SLOX WebDAV.</title>.<body bgcolor="#ffffff">.<h1>Aut
  horization Required</h1>.</body>.</html>.

T 192.168.32.26:33792 -> 192.168.32.130:80 [AP]
  PROPFIND /servlet/webdav.documents HTTP/1.0..Host: dev130.netline.de:80..Ac
  cept: */*..User-Agent: gnome-vfs/2.2.5..Authorization: Basic xxxxxxxxxxxxxxxx
  xxxx==..Content-Length: 279..Depth: 0....<?xml version="1.0" encoding="utf-
  8" ?><D:propfind xmlns:D="DAV:" xmlns:ns1000="http://services.eazel.com/nam
  espaces"><D:prop><D:creationdate/><D:getcontentlength/><D:getcontenttype/><
  D:getlastmodified/><D:resourcetype/><ns1000:nautilus-treat-as-directory/></
  D:prop></D:propfind>
 
T 192.168.32.130:80 -> 192.168.32.26:33792 [AP]
  HTTP/1.1 207 Response..Date: Wed, 13 Aug 2003 12:44:33 GMT..Server: Apache/
  1.3.26 (UnitedLinux) ApacheJServ/1.1.2 mod_webapp/1.2.0-dev mod_ssl/2.8.10
  OpenSSL/0.9.6g mod_perl/1.27..Set-Cookie: JServSessionIdroot=uk2gxu3141; pa
  th=/..Connection: close..Content-Type: text/xml; charset="utf-8"....

T 192.168.32.130:80 -> 192.168.32.26:33792 [AP]
  <?xml version="1.0" encoding="UTF-8"?>.<D:multistatus xmlns:D="DAV:">.<D:re
  sponse>.<D:href>/servlet/webdav.documents/</D:href>.<D:propstat>.<D:prop>.<
  D:getcontenttype>httpd/unix-directory</D:getcontenttype>.<D:resourcetype>.<
  D:collection />.</D:resourcetype>.<D:creationdate xmlns:b="urn:uuid:c2f4101
  0-65b3-11d1-a29f-00aa00c14882/" b:dt="dateTime.tz">1970-01-01T00:00:00Z</D:
  creationdate>.<D:getlastmodified xmlns:b="urn:uuid:c2f41010-65b3-11d1-a29f-
  00aa00c14882/" b:dt="dateTime.rfc1123">Thu, 01 Jan 1970 00:00:00 GMT</D:get
  lastmodified>.</D:prop>.<D:status>HTTP/1.1 200 OK</D:status>.</D:propstat>.
  <D:propstat>.<D:prop>.<D:getcontentlength />.<ns1000:nautilus-treat-as-dire
  ctory xmlns:ns1000="http://services.eazel.com/namespaces"; />.</D:prop>.<D:s
  tatus>HTTP/1.1 404 Not Found</D:status>.</D:propstat>.</D:response>.</D:mul
  tistatus>..

<snap>
(Removed the base64 coded Login)

Does somebody have some idea, what's the cause of the problem? What's wrong with my XML? Or are some headers wrong? I don't have any more ideas.

Talked to someone of Ximian and he meant if "<D:resourcetype><D:collection/></D:resourcetype>" appears Gnome-VFS should detect WebDAV and display the contents of that directory.

Many thanks.

Best regards,

Marcus Klein 
-- 
Netline Internet Service GmbH
Raiffeisenstraße 12
57462 Olpe

Fon +49(0)2761-838516
Email m klein netline-is de





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]