From: Joe W. <jo...@gm...> - 2012-07-16 18:10:07
|
Hi all, Since updating to eXist 2.1-dev rev. 16847, I am unable to copy any file into the database via WebDAV if the file already exists. This is using Windows XP desktop as well as oXygen's File > Save to URL with a webdav URL. Here is a reproducible test: 1. Create a collection called /db/test in the database 2. Save a new file to this collection, /db/test/test.xml, with simple contents like: <x/> 3. Create another new file and try to save over this file; for example, in oXygen create a new file, put something simple into it like <y/>, and do File > Save to URL > http://localhost:8080/exist/webdav/db/test/test.xml. oXygen's warning dialog says: "Cannot save the file. 412 Precondition Failed for: http://localhost:8080/exist/webdav/db/test/test.xml" exist.log says: 2012-07-16 14:02:09,596 [eXistThread-28] INFO (MiltonResource.java [authorise]:350) - PROPFIND /db/test (write=false) 2012-07-16 14:02:09,596 [eXistThread-28] DEBUG (MiltonResource.java [authorise]:415) - User admin is authorized to read resource /db/test 2012-07-16 14:02:09,596 [eXistThread-28] DEBUG (MiltonCollection.java [getCurrentLock]:332) - '/db/test' 2012-07-16 14:02:09,596 [eXistThread-28] DEBUG (MiltonCollection.java [getChildren]:179) - Nr of children=1 2012-07-16 14:02:09,596 [eXistThread-28] DEBUG (MiltonDocument.java [getCurrentLock]:499) - getLock: /db/test/test.xml 2012-07-16 14:02:09,596 [eXistThread-28] DEBUG (ExistDocument.java [getCurrentLock]:325) - Get current lock /db/test/test.xml 2012-07-16 14:02:09,596 [eXistThread-28] DEBUG (ExistDocument.java [getCurrentLock]:347) - Document /db/test/test.xml does not contain userlock 2012-07-16 14:02:09,596 [eXistThread-28] DEBUG (ExistDocument.java [getCurrentLock]:387) - Finished probe lock 2012-07-16 14:02:09,596 [eXistThread-28] DEBUG (MiltonDocument.java [getCurrentLock]:504) - No database lock token. 2012-07-16 14:02:09,596 [eXistThread-28] DEBUG (MiltonDocument.java [getContentLength]:369) - Size=4096 (/db/test/test.xml) 2012-07-16 14:02:12,237 [eXistThread-28] INFO (HttpManager.java [process]:213) - PUT :: http://localhost:8080/exist/webdav/db/test/test.xml- http://localhost:8080/exist/webdav/db/test/test.xml 2012-07-16 14:02:12,237 [eXistThread-28] DEBUG (ExistResourceFactory.java [getResource]:93) - host='localhost:8080' path='/db/test/test.xml' 2012-07-16 14:02:12,237 [eXistThread-28] DEBUG (ExistResourceFactory.java [getResourceType]:145) - Path: /db/test/test.xml 2012-07-16 14:02:12,237 [eXistThread-28] DEBUG (ExistResourceFactory.java [getResourceType]:198) - Resource type=DOCUMENT 2012-07-16 14:02:12,237 [eXistThread-28] DEBUG (MiltonDocument.java [getCurrentLock]:499) - getLock: /db/test/test.xml 2012-07-16 14:02:12,237 [eXistThread-28] DEBUG (ExistDocument.java [getCurrentLock]:325) - Get current lock /db/test/test.xml 2012-07-16 14:02:12,237 [eXistThread-28] DEBUG (ExistDocument.java [getCurrentLock]:347) - Document /db/test/test.xml does not contain userlock 2012-07-16 14:02:12,237 [eXistThread-28] DEBUG (ExistDocument.java [getCurrentLock]:387) - Finished probe lock 2012-07-16 14:02:12,237 [eXistThread-28] DEBUG (MiltonDocument.java [getCurrentLock]:504) - No database lock token. 2012-07-16 14:02:12,237 [eXistThread-28] INFO (PutHandler.java [process]:116) - if-match comparison failed, aborting PUT request On this final line, the log says that "if-match comparison failed". Could this error be a side effect of the recent upgrade of the Milton jars from 1.8.0.1 to 1.8.1.1? I noticed that the release notes for Milton 1.8.1 said something about "if-match comparison" -- http://lists.justthe.net/pipermail/milton-users/2012-July/001398.html. Thanks very much in advance for any assistance. Joe |