jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "angela (JIRA)" <j...@apache.org>
Subject [jira] Commented: (JCR-1571) JCR Webdav Server doesn't support node.hasNode() method
Date Fri, 09 May 2008 11:04:55 GMT

    [ https://issues.apache.org/jira/browse/JCR-1571?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12595553#action_12595553

angela commented on JCR-1571:

> I created my repository by using the "Populate" link in the default Jackrabbit deployment
> the war file.

that's fine (an probably does something similar as my manual test)

> I don't know if the comment from Julian Reschle is sufficient to isolate it.

i guess it is.

> These are some notes on your log and mine
> - I do see HR tags in the response from the server

yes. but i'm quite sure, that they are not generated by the webdav servlet.

> - The version of the http client you are using is different from mine (I'm
> running 3.1 -although I don't think this is the problem)

nor do i. httpclient 3.0 is the version used with the spi2dav project.

> - You are using a different version of the servlet container (I am 
>   usingTomcat)

yes. and i assume, that it is tomcat that generates the html error
page... and i assume that there is a way to turn that off as it should
be possible to configure a custom error page. can you try that?


> JCR Webdav Server doesn't support node.hasNode() method
> -------------------------------------------------------
>                 Key: JCR-1571
>                 URL: https://issues.apache.org/jira/browse/JCR-1571
>             Project: Jackrabbit
>          Issue Type: Bug
>          Components: sandbox
>    Affects Versions: core 1.4.2
>         Environment: JDK 1.6; Tomcat 6; Windows 2003
>            Reporter: Julio Castillo
>            Assignee: angela
>         Attachments: HasNodeTest.java, trace_JCR-1571.txt
> I have a set up that uses the JCR Webdav Server from a custom remote client.
> I've noticed one thing, anytime I request a node that doesn't exist the error that comes
back from the server is as follows:
> [Fatal Error] :1:941: The element type "HR" must be terminated by the matching end-tag
> javax.jcr.RepositoryException: The element type "HR" must be terminated by the matching
end-tag "</HR>".: The element type "HR" must be terminated by the matching end-tag "</HR>".
> Doesn't really make sense, but that is OK, I can handle that.
> My problem:
> I have a partially populated repository that at the root has a few nodes like
> /edu/....
> /com/ibm/..
> So, I want to create a few nodes of type nt:folder under
> com/myCompany/folder1
> I have no problem creating them, but since "com" already exists I end up with
> com[2]/myCompany/folder1.
> So, I went ahead and used the parentNode.hasNode("folderName") method.
> This method returns true for the "com" portion, but when I test for the "myCompany" folder
which should return false I get the error response shown above from the server.
> The webdav request looks as follows:
> PROPFIND /jackrabbit/server/default/jcr%3aroot/com/myCompany
> The snippet of code looks as follows:
>   private Node createFolders (Session session, Node parentNode, List <String> folders)
> 	  throws RepositoryException {
>     Node folderNode = null;
>     for (String folder : folders) {
> 	if (parentNode.hasNode(folder))
> 	    folderNode = parentNode.getNode(folder);
> 	else
> 	    folderNode = parentNode.addNode(folder, "nt:folder");
> 	parentNode = folderNode;
>     }
>     session.save();
>     return (folderNode);
>   }

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

View raw message