You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by "angela (JIRA)" <ji...@apache.org> on 2007/08/31 10:20:31 UTC

[jira] Resolved: (JCR-1071) PROPPATCH on collection gets 403 Forbidden

     [ https://issues.apache.org/jira/browse/JCR-1071?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

angela resolved JCR-1071.
-------------------------

    Resolution: Fixed

applied patch at rev. 571397  

i let litmus run and there were no new issues found. note, that i didn't perform specific tests 
for proppatch on collections.


> PROPPATCH on collection gets 403 Forbidden
> ------------------------------------------
>
>                 Key: JCR-1071
>                 URL: https://issues.apache.org/jira/browse/JCR-1071
>             Project: Jackrabbit
>          Issue Type: Bug
>          Components: webdav
>    Affects Versions: 1.4
>            Reporter: Rob Owen
>            Assignee: angela
>             Fix For: 1.4
>
>
> DefaultHandler.canImport(PropertyImportContext, boolean) prevents setting properties (PROPPATCH) on collections through WebDAV ... returns 403 Forbidden. It checks to see whether the contextItem is not a collection, or has a jcr:content node. This test fails for a collection and should probably allow collections or nodes that have a jcr:content subnode. Here is a patch for the change
> Index: jackrabbit-jcr-server/src/main/java/org/apache/jackrabbit/server/io/DefaultHandler.java
> ===================================================================
> --- jackrabbit-jcr-server/src/main/java/org/apache/jackrabbit/server/io/DefaultHandler.java	(revision 567695)
> +++ jackrabbit-jcr-server/src/main/java/org/apache/jackrabbit/server/io/DefaultHandler.java	(working copy)
> @@ -570,7 +570,7 @@
>          }
>          Item contextItem = context.getImportRoot();
>          try {
> -            return contextItem != null && contextItem.isNode() && (!isCollection || ((Node)contextItem).hasNode(JcrConstants.JCR_CONTENT));
> +            return contextItem != null && contextItem.isNode() && (isCollection || ((Node)contextItem).hasNode(JcrConstants.JCR_CONTENT));
>          } catch (RepositoryException e) {
>              log.error("Unexpected error: " + e.getMessage());
>              return false;

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.