GitLab Mirror pushed to branch trunk at cms-community / hippo-jackrabbit

Commits:
a3f662eb by Julian Reschke at 2016-11-06T21:23:22+00:00
JCR-4052: RFC4918DestinationHeaderTest fails with internal server error

git-svn-id: https://svn.apache.org/repos/asf/jackrabbit/trunk@1768392 
13f79535-47bb-0310-9956-ffa450edef68

- - - - -


2 changed files:

- 
jackrabbit-webdav/src/main/java/org/apache/jackrabbit/webdav/server/AbstractWebdavServlet.java
- 
jackrabbit-webdav/src/test/java/org/apache/jackrabbit/webdav/server/RFC4918DestinationHeaderTest.java


Changes:

=====================================
jackrabbit-webdav/src/main/java/org/apache/jackrabbit/webdav/server/AbstractWebdavServlet.java
=====================================
--- 
a/jackrabbit-webdav/src/main/java/org/apache/jackrabbit/webdav/server/AbstractWebdavServlet.java
+++ 
b/jackrabbit-webdav/src/main/java/org/apache/jackrabbit/webdav/server/AbstractWebdavServlet.java
@@ -845,7 +845,14 @@ abstract public class AbstractWebdavServlet extends 
HttpServlet implements DavCo
                     return DavServletResponse.SC_PRECONDITION_FAILED;
                 } else {
                     // overwrite existing resource
-                    destResource.getCollection().removeMember(destResource);
+                    DavResource col;
+                    try {
+                        col = destResource.getCollection();
+                    }
+                    catch (IllegalArgumentException ex) {
+                        return DavServletResponse.SC_BAD_GATEWAY;
+                    }
+                    col.removeMember(destResource);
                     status = DavServletResponse.SC_NO_CONTENT;
                 }
             } else {


=====================================
jackrabbit-webdav/src/test/java/org/apache/jackrabbit/webdav/server/RFC4918DestinationHeaderTest.java
=====================================
--- 
a/jackrabbit-webdav/src/test/java/org/apache/jackrabbit/webdav/server/RFC4918DestinationHeaderTest.java
+++ 
b/jackrabbit-webdav/src/test/java/org/apache/jackrabbit/webdav/server/RFC4918DestinationHeaderTest.java
@@ -79,7 +79,7 @@ public class RFC4918DestinationHeaderTest extends TestCase {
         String destinationpath = new URI(destinationuri).getRawPath();
         // make sure the scheme is removed
         assertFalse(destinationpath.contains(":"));
-        
+
         int status;
         try {
             PutMethod put = new PutMethod(testuri);
@@ -89,7 +89,7 @@ public class RFC4918DestinationHeaderTest extends TestCase {
             // try to move outside the servlet's name space
             MoveMethod move = new MoveMethod(testuri, "/foobar", true);
             status = this.client.executeMethod(move);
-            assertTrue("status: " + status, status == 403);
+            assertTrue("status: " + status, status == 502);
 
             // try a relative path
             move = new MoveMethod(testuri, "foobar", true);



View it on GitLab: 
https://code.onehippo.org/cms-community/hippo-jackrabbit/commit/a3f662eb2434e64ae2e1c81070bec72b7207a9a6
_______________________________________________
Hippocms-svn mailing list
Hippocms-svn@lists.onehippo.org
https://lists.onehippo.org/mailman/listinfo/hippocms-svn

Reply via email to