You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by Deryl Seale <de...@acm.org> on 2004/02/11 00:53:19 UTC

dreamweaver + subversion + webdav

Hello, all.  I am trying to use Subversion with Apache 2.1 (using 
mod_dav_svn + mod_dav + mod_dav_lock) as a repository, to which I want 
to connect Dreamweaver.  Everything works fine, except that I cannot 
create new files.  I read a thread related to this problem that was 
dated last March, but I never saw a definitive conclusion.

So, before I start sending lots of detailed debugging information, I 
thought I'd ask: is this a known problem, and if so, is there a 
solution?

thanks.
-d.

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: dreamweaver + subversion + webdav

Posted by Ben Collins-Sussman <su...@collab.net>.
On Wed, 2004-02-11 at 17:18, Deryl Seale wrote:
> You say that few people are using autoversioning, less still with  
> mod_dav_lock -- is there a better, or more standard way to get  
> subversion working with other WebDAV clients? 

Subversion 1.0 is not a generic WebDAV server, nor was it ever
advertised as such.  There's no other "better" way than what you're
already doing.  :-)

We chose WebDAV because (1) http goes through firewalls, (2) apache is
already an excellent generic server, (3) potential for http proxies and
caching, and (4) future DAV compatibility potential.

The key in point #4 is the word "potential".  Subversion 1.0 has *some*
compatibility with other DAV clients, but not complete.  Appendix D in
the book talks all about that, as I'm sure you're aware.  But the main
point is that we didn't choose WebDAV so that Subversion can seemlessly
interact with Dreamweaver, Adobe, MSOffice, etc.  If you can make it
work, that's great, more power to ya.  Otherwise, real compatibility is
a far-future feature.  Autoversioning was a cute freebie I threw into
the code over an xmas holiday, just a small step on the road to real
interoperablity.  That's why I mentioned that anyone using
Autoversioning is exploring 'uncharted territory'.


> LOCK /svn/repo/test.htm HTTP/1.1
> Host: 192.168.2.132
> User-Agent: Dreamweaver-WebDAV-SCM1.02
> Authorization: Basic d2ViZGF2OndlYmRhdg==
> Translate: f
> Timeout: Infinite, Second-4100000000
> Depth: 0
> Connection: Close
> Content-Type: text/xml; charset="utf-8"
> Content-Length: 218
> 
> <?xml version="1.0" encoding="utf-8" ?>
> <D:lockinfo xmlns:D="DAV:">
> <D:lockscope>
> <D:exclusive/>
> </D:lockscope>
> <D:locktype><D:write/></D:locktype><D:owner><D:href>deryl@acm.org</D: 
> href></D:owner></D:lockinfo>
> 
> HTTP/1.1 405 Method Not Allowed
> Date: Wed, 11 Feb 2004 23:05:30 GMT
> Server: Apache/2.1.0-dev (Unix) DAV/2 SVN/0.37.0+
> Allow: GET,HEAD,POST,OPTIONS,TRACE
> Content-Length: 339
> Connection: close
> Content-Type: text/html; charset=iso-8859-1
> 
> <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
> <html><head>
> <title>405 Method Not Allowed</title>
> </head><body>
> <h1>Method Not Allowed</h1>
> <p>The requested method LOCK is not allowed for the URL  
> /svn/repo/test.htm.</p>
> <hr />
> <address>Apache/2.1.0-dev (Unix) DAV/2 SVN/0.37.0+ Server at  
> 192.168.2.132 Port 80</address>
> </body></html>

Looks like Dreamweaver is attempting to LOCK a non-existent URL.  This
is a technique (described by the DAV spec) for reserving a filename
before you PUT to it.  I don't think all DAV servers support this
feature, though, I don't remember.  You'll have to check the spec about
"locking null resources".  Anyway, it looks like mod_dav (or
mod_dav_svn) isn't supporting that sort of request.  Patches are
welcome.  :-)



---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: dreamweaver + subversion + webdav

Posted by Deryl Seale <de...@acm.org>.
You say that few people are using autoversioning, less still with  
mod_dav_lock -- is there a better, or more standard way to get  
subversion working with other WebDAV clients?  I am only going on what  
documentation I can find, but I'm happy to try out other approaches.

Here are the log entries in the Apache access.log file that relate to  
saving a new file (test.htm):

192.168.2.133 - webdav [11/Feb/2004:15:05:30 -0800] "PROPFIND  
/svn/repo/test.htm HTTP/1.1" 404 315
192.168.2.133 - webdav [11/Feb/2004:15:05:30 -0800] "PROPFIND  
/svn/repo/test.htm HTTP/1.1" 404 315
192.168.2.133 - webdav [11/Feb/2004:15:05:30 -0800] "LOCK  
/svn/repo/test.htm HTTP/1.1" 405 339

And here is what Ethereal captured during this transaction:

PROPFIND /svn/repo/test.htm HTTP/1.1
Host: 192.168.2.132
User-Agent: Dreamweaver-WebDAV-SCM1.02
Authorization: Basic d2ViZGF2OndlYmRhdg==
Translate: f
Depth: 1
Connection: Close
Content-Type: text/xml; charset="utf-8"
Content-Length: 130

<?xml version="1.0" encoding="utf-8" ?>
<D:propfind xmlns:D="DAV:">
         <D:prop>
                 <D:resourcetype/>
</D:prop>
</D:propfind>

HTTP/1.1 404 Not Found
Date: Wed, 11 Feb 2004 23:05:30 GMT
Server: Apache/2.1.0-dev (Unix) DAV/2 SVN/0.37.0+
Content-Length: 315
Connection: close
Content-Type: text/html; charset=iso-8859-1

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>404 Not Found</title>
</head><body>
<h1>Not Found</h1>
<p>The requested URL /svn/repo/test.htm was not found on this  
server.</p>
<hr />
<address>Apache/2.1.0-dev (Unix) DAV/2 SVN/0.37.0+ Server at  
192.168.2.132 Port 80</address>
</body></html>

PROPFIND /svn/repo/test.htm HTTP/1.1
Host: 192.168.2.132
User-Agent: Dreamweaver-WebDAV-SCM1.02
Authorization: Basic d2ViZGF2OndlYmRhdg==
Translate: f
Depth: 1
Connection: Close
Content-Type: text/xml; charset="utf-8"
Content-Length: 130

<?xml version="1.0" encoding="utf-8" ?>
<D:propfind xmlns:D="DAV:">
         <D:prop>
                 <D:resourcetype/>
</D:prop>
</D:propfind>

HTTP/1.1 404 Not Found
Date: Wed, 11 Feb 2004 23:05:30 GMT
Server: Apache/2.1.0-dev (Unix) DAV/2 SVN/0.37.0+
Content-Length: 315
Connection: close
Content-Type: text/html; charset=iso-8859-1

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>404 Not Found</title>
</head><body>
<h1>Not Found</h1>
<p>The requested URL /svn/repo/test.htm was not found on this  
server.</p>
<hr />
<address>Apache/2.1.0-dev (Unix) DAV/2 SVN/0.37.0+ Server at  
192.168.2.132 Port 80</address>
</body></html>

LOCK /svn/repo/test.htm HTTP/1.1
Host: 192.168.2.132
User-Agent: Dreamweaver-WebDAV-SCM1.02
Authorization: Basic d2ViZGF2OndlYmRhdg==
Translate: f
Timeout: Infinite, Second-4100000000
Depth: 0
Connection: Close
Content-Type: text/xml; charset="utf-8"
Content-Length: 218

<?xml version="1.0" encoding="utf-8" ?>
<D:lockinfo xmlns:D="DAV:">
<D:lockscope>
<D:exclusive/>
</D:lockscope>
<D:locktype><D:write/></D:locktype><D:owner><D:href>deryl@acm.org</D: 
href></D:owner></D:lockinfo>

HTTP/1.1 405 Method Not Allowed
Date: Wed, 11 Feb 2004 23:05:30 GMT
Server: Apache/2.1.0-dev (Unix) DAV/2 SVN/0.37.0+
Allow: GET,HEAD,POST,OPTIONS,TRACE
Content-Length: 339
Connection: close
Content-Type: text/html; charset=iso-8859-1

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>405 Method Not Allowed</title>
</head><body>
<h1>Method Not Allowed</h1>
<p>The requested method LOCK is not allowed for the URL  
/svn/repo/test.htm.</p>
<hr />
<address>Apache/2.1.0-dev (Unix) DAV/2 SVN/0.37.0+ Server at  
192.168.2.132 Port 80</address>
</body></html>

Hope this helps.

-d.

On Feb 11, 2004, at 8:29 AM, Ben Collins-Sussman wrote:

> On Tue, 2004-02-10 at 18:53, Deryl Seale wrote:
>> Hello, all.  I am trying to use Subversion with Apache 2.1 (using
>> mod_dav_svn + mod_dav + mod_dav_lock) as a repository, to which I want
>> to connect Dreamweaver.  Everything works fine, except that I cannot
>> create new files.  I read a thread related to this problem that was
>> dated last March, but I never saw a definitive conclusion.
>>
>> So, before I start sending lots of detailed debugging information, I
>> thought I'd ask: is this a known problem, and if so, is there a
>> solution?
>
> Not many people use the autoversioning feature at all, and especially
> not with apache 2.1's mod_dav_lock.  It's uncharted territory.  Every
> webdav client seems to be temperamental in a different way.
>
> The most useful thing is to show us the webdav HTTP dialogue that
> happens when dreamweaver tries to create a new file (use ethereal to
> capture that.)
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: dreamweaver + subversion + webdav

Posted by Ben Collins-Sussman <su...@collab.net>.
On Tue, 2004-02-10 at 18:53, Deryl Seale wrote:
> Hello, all.  I am trying to use Subversion with Apache 2.1 (using 
> mod_dav_svn + mod_dav + mod_dav_lock) as a repository, to which I want 
> to connect Dreamweaver.  Everything works fine, except that I cannot 
> create new files.  I read a thread related to this problem that was 
> dated last March, but I never saw a definitive conclusion.
> 
> So, before I start sending lots of detailed debugging information, I 
> thought I'd ask: is this a known problem, and if so, is there a 
> solution?

Not many people use the autoversioning feature at all, and especially
not with apache 2.1's mod_dav_lock.  It's uncharted territory.  Every
webdav client seems to be temperamental in a different way.

The most useful thing is to show us the webdav HTTP dialogue that
happens when dreamweaver tries to create a new file (use ethereal to
capture that.)



---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org