chemistry-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alexander Chow <alexander.c...@liferay.com>
Subject Re: Sharepoint and canDeleteTreeSpecified
Date Thu, 31 Mar 2011 10:08:29 GMT
Hi Florian,

Thanks for the clarification. The canDeleteTreeSpecified IS being passed back in the XML (and
using the CMIS namespace!) but, as you say, OpenCMIS ignores it.

So what that means then is that Sharepoint really doesn't allow deleteTree? That is really
weird. That means I need to actually walk the tree to delete the entries, I suppose. That's
going to be expensive.

Thanks,
Alex
On Thursday, March 31, 2011 at 10:20 AM, Florian Müller wrote: 
> Hi Alex,
> 
> canDeleteTreeSpecified is a class member generated by the .NET XML serialization framework.
It indicates if the tag exists in the XML document or not. It has nothing to do with the CMIS
specification. 
> It shouldn't show up IN the XML, thought. Only Microsoft can answer why it is there.
OpenCMIS ignores it.
> 
> The CMIS Workbench does work with SharePoint. There are a few issues that are caused
by Microsofts CMIS implementation. The CMIS Workbench works best with the AtomPub binding.
If you can, turn off NTLM and turn on basic authentication on the SharePoint end. 
> 
> 
> Cheers,
> 
> Florian
> 
> 
> On 31/03/2011 00:28, Alexander Chow wrote:
> > Hi all,
> > 
> > So, we are trying to use OpenCMIS 0.2.0 to access a Sharepoint 2010 repository and
noticed that we can't call Folder.deleteTree(). We get the following stacktrace snippet:
> > 
> > Caused by: org.apache.chemistry.opencmis.commons.exceptions.CmisNotSupportedException:
Method Not Allowed
> > at org.apache.chemistry.opencmis.client.bindings.spi.atompub.AbstractAtomPubService.convertStatusCode(AbstractAtomPubService.java:405)
> > at org.apache.chemistry.opencmis.client.bindings.spi.atompub.ObjectServiceImpl.deleteTree(ObjectServiceImpl.java:370)
> > at org.apache.chemistry.opencmis.client.runtime.FolderImpl.deleteTree(FolderImpl.java:176)
> > ...
> > 
> > Upon further investigation, it turns out that indeed the allowableActions entry
"canDeleteTree" is FALSE. But there seems to be another entry that I am not familiar with
and can't seem to find in the CMIS 1.0 spec... "canDeleteTreeSpecified", which is TRUE.
> > 
> > <allowableActions xmlns="http://docs.oasis-open.org/ns/cmis/core/200908/">
> > <anyAttr i:nil="true" xmlns:a="http://schemas.datacontract.org/2004/07/System.Xml"
xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://docs.oasis-open.org/ns/cmis/core/200908/"></anyAttr>
> > <any i:nil="true" xmlns:a="http://schemas.datacontract.org/2004/07/System.Xml"
xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://docs.oasis-open.org/ns/cmis/core/200908/"></any>
> > ...
> > <canDeleteObject xmlns="http://docs.oasis-open.org/ns/cmis/core/200908/">true</canDeleteObject>
> > <canDeleteObjectSpecified xmlns="http://docs.oasis-open.org/ns/cmis/core/200908/">true</canDeleteObjectSpecified>
> > <canDeleteTreeSpecified xmlns="http://docs.oasis-open.org/ns/cmis/core/200908/">true</canDeleteTreeSpecified>
> > ...
> > <canDeleteContentStream xmlns="http://docs.oasis-open.org/ns/cmis/core/200908/">false</canDeleteContentStream>
> > <canDeleteTree xmlns="http://docs.oasis-open.org/ns/cmis/core/200908/">false</canDeleteTree>
> > ...
> > </allowableActions>
> > 
> > 
> > Incidentally, I have also noticed that the canDeleteTreeSpecified seems to be in
the DotCMIS code:
> > 
> > http://svn.apache.org/repos/asf/chemistry/dotcmis/trunk/DotCMIS/binding/converter.cs
> > 
> > Can somebody give some light as to what Sharepoint (and DotCMIS) is doing here?
Are we unable to delete the trees of a folder? Or is there some part of the spec which I am
not familiar with? Incidentally, it seems as though the CMIS workbench does not work either
with Sharepoint.
> > 
> > Thanks,
> > 
> > Alex
> 

Mime
  • Unnamed multipart/alternative (inline, 8-Bit, 0 bytes)
View raw message