You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by imadhusudhanan <ma...@gmail.com> on 2009/02/26 20:43:52 UTC

Exception while setting property ..

Dear All,

    I use the following code to set the property for a Node, 
                        DavResourceLocator resourceLocator = locator.getFactory().createResourceLocator(locator.getPrefix(), locator.getWorkspacePath(), resourceURL, false);
                        DavResource childRes = factory.createResource(resourceLocator, session);
                        System.out.println("Resouce Type in getDOcsMemebers >>> "+resourceType);
                        if(resourceType.equals("folder")) {
                            childRes.setProperty(new ResourceType(ResourceType.COLLECTION));
                        } 
                        childNodes.add(childRes);

    I get the following exception while setting the property. I m using jackrabbit-webdav-1.4.jar and its dependencies. The test is performed in Linux Cadaver client. Pls help.
    
org.apache.jackrabbit.webdav.DavException: Internal Server Error|
[01:11:33:978]|[02-27-2009]|[SYSOUT]|[INFO]|[15]|:      at org.apache.jackrabbit.webdav.simple.DavResourceImpl.alterProperty(DavResourceImpl.java:410)|
[01:11:33:978]|[02-27-2009]|[SYSOUT]|[INFO]|[15]|:      at org.apache.jackrabbit.webdav.simple.DavResourceImpl.setProperty(DavResourceImpl.java:381)|
[01:11:33:979]|[02-27-2009]|[SYSOUT]|[INFO]|[15]|:      at org.apache.jackrabbit.webdav.simple.DavResourceImpl.getDocMembers(DavResourceImpl.java:604)|
[01:11:33:979]|[02-27-2009]|[SYSOUT]|[INFO]|[15]|:      at org.apache.jackrabbit.webdav.server.AbstractWebdavServlet.doPropFind(AbstractWebdavServlet.java:475)|
[01:11:33:979]|[02-27-2009]|[SYSOUT]|[INFO]|[15]|:      at org.apache.jackrabbit.webdav.server.AbstractWebdavServlet.execute(AbstractWebdavServlet.java:249)|
[01:11:33:979]|[02-27-2009]|[SYSOUT]|[INFO]|[15]|:      at org.apache.jackrabbit.webdav.server.AbstractWebdavServlet.service(AbstractWebdavServlet.java:212)|
[01:11:33:979]|[02-27-2009]|[SYSOUT]|[INFO]|[15]|:      at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)|
[01:11:33:980]|[02-27-2009]|[SYSOUT]|[INFO]|[15]|:      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)|
[01:11:33:980]|[02-27-2009]|[SYSOUT]|[INFO]|[15]|:      at org.apache.catalina.core.ApplicationFilterChain.doFilter(Applicati

Re: Exception while setting property ..

Posted by Angela Schreiber <an...@day.com>.
hi

why would you want to set the DAV:resourceType
property?

RFC 4918 states in section 15.9 resourcetype Property:

"
    Purpose:   Specifies the nature of the resource.
    Protected: SHOULD be protected. Resource type is generally
               decided through the operation creating the resource (MKCOL
               vs PUT), not by PROPPATCH.
"

and in fact the DAV:resourceType property is protected
in jackrabbit.

apart from that (just as a general information): PROPPATCH
on any resource will only succees if the underlying JCR nodes
allows to add/modify/remove the property or properties specified.
the set of allowed properties is defined by the node type
definition... which in turn depends on the IOHandlers you
using.

angela

imadhusudhanan wrote:
>   Dear All,
> 
>     I use the following code to set the property for a Node,
>                         DavResourceLocator resourceLocator = 
> locator.getFactory().createResourceLocator(locator.getPrefix(), 
> locator.getWorkspacePath(), resourceURL, false);
>                         DavResource childRes = 
> factory.createResource(resourceLocator, session);
>                         System.out.println("Resouce Type in 
> getDOcsMemebers >>> "+resourceType);
>                         if(resourceType.equals("folder")) {
>                             childRes.setProperty(new 
> ResourceType(ResourceType.COLLECTION));
>                         }
>                         childNodes.add(childRes);
> 
>     I get the following exception while setting the property. I m using 
> jackrabbit-webdav-1.4.jar and its dependencies. The test is performed in 
> Linux Cadaver client. Pls help.
>    
> org.apache.jackrabbit.webdav.DavException: Internal Server Error|
> [01:11:33:978]|[02-27-2009]|[SYSOUT]|[INFO]|[15]|:      at 
> org.apache.jackrabbit.webdav.simple.DavResourceImpl.alterProperty(DavResourceImpl.java:410)|
> [01:11:33:978]|[02-27-2009]|[SYSOUT]|[INFO]|[15]|:      at 
> org.apache.jackrabbit.webdav.simple.DavResourceImpl.setProperty(DavResourceImpl.java:381)|
> [01:11:33:979]|[02-27-2009]|[SYSOUT]|[INFO]|[15]|:      at 
> org.apache.jackrabbit.webdav.simple.DavResourceImpl.getDocMembers(DavResourceImpl.java:604)|
> [01:11:33:979]|[02-27-2009]|[SYSOUT]|[INFO]|[15]|:      at 
> org.apache.jackrabbit.webdav.server.AbstractWebdavServlet.doPropFind(AbstractWebdavServlet.java:475)|
> [01:11:33:979]|[02-27-2009]|[SYSOUT]|[INFO]|[15]|:      at 
> org.apache.jackrabbit.webdav.server.AbstractWebdavServlet.execute(AbstractWebdavServlet.java:249)|
> [01:11:33:979]|[02-27-2009]|[SYSOUT]|[INFO]|[15]|:      at 
> org.apache.jackrabbit.webdav.server.AbstractWebdavServlet.service(AbstractWebdavServlet.java:212)|
> [01:11:33:979]|[02-27-2009]|[SYSOUT]|[INFO]|[15]|:      at 
> javax.servlet.http.HttpServlet.service(HttpServlet.java:802)|
> [01:11:33:980]|[02-27-2009]|[SYSOUT]|[INFO]|[15]|:      at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)|
> [01:11:33:980]|[02-27-2009]|[SYSOUT]|[INFO]|[15]|:      at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(Applicati