Hey Florian,

Repository is using 1.1 version (I noticed from the given URL and workbench) ; 
from the Workbench I can inspect the object, get all extra properties and use 
the Content URL Link to download it.

So a quick solution is instead of using the GetObject/GetContentstream is using 
the https:// link with cmis:name/objectid and .Net webclient to download it,
or is there another (more neat) way with CMIS client to do this ? I'm not a 
Java person that's why i chose the DotCmis version :-)

regards,
Erwin

-----Oorspronkelijk bericht-----
Van: Florian Müller [mailto:f...@apache.org] 
Verzonden: zaterdag 6 september 2014 10:10
Aan: dev@chemistry.apache.org
CC: Erwin Moll - Nazca-I
Onderwerp: Re: I: problem with getting contentstream of object

Hi Erwin,

Which repository are you connected to and which CMIS binding are you using?


You get a "Property 'gu:letterCharacteristic' doesn't exist!" error message if 
either the repository returns incorrect type definitions or if you try to 
connect to a CMIS 1.1 endpoint. (DotCMIS does not support CMIS 1.1, yet).

Can you download this document with the CMIS Workbench?


- Florian


> Hello,
> 
>  
> 
> Using DotCMIS 0.7 version and trying to download a document using
> 
>                     IObjectId _oid =
> session.CreateObjectId(co["cmis:objectId"].FirstValue.ToString());
> 
>                     IDocument cmdoc = session.GetObject(_oid) as 
> IDocument;
> 
>                     IContentStream retdoc = cmdoc.GetContentStream();
> 
>  
> 
>  
> 
> I get an error on the GetObject (_oid)  on resolving the object to an 
> IDocument I get an CMISRuntimeException:
> 
>  
> 
> Property 'gu:letterCharacteristic' doesn't exist!
> 
>  
> 
>    at DotCMIS.Client.Impl.ObjectFactory.ConvertProperty(IObjectType
> objectType, IPropertyData pd)
> 
>    at DotCMIS.Client.Impl.ObjectFactory.ConvertProperties(IObjectType
> objectType, IProperties properties)
> 
>    at DotCMIS.Client.Impl.AbstractCmisObject.Initialize(ISession
> session, IObjectType objectType, IObjectData objectData, 
> IOperationContext context)
> 
>    at DotCMIS.Client.Impl.Document..ctor(ISession session, IObjectType 
> objectType, IObjectData objectData, IOperationContext context)
> 
>    at DotCMIS.Client.Impl.ObjectFactory.ConvertObject(IObjectData
> objectData, IOperationContext context)
> 
>    at DotCMIS.Client.Impl.Session.GetObject(String objectId, 
> IOperationContext context)
> 
>    at DotCMIS.Client.Impl.Session.GetObject(IObjectId objectId, 
> IOperationContext context)
> 
>    at DotCMIS.Client.Impl.Session.GetObject(IObjectId objectId)
> 
>  
> 
>  
> 
> The object has extended properties (found this out on using the 
> CMisWorkbech).
> 
>  
> 
> I'm only interested in getting the actual stream and not the 
> properties so I tried to do the same with 
> session.GetContentStream(_oid);
> 
>  
> 
> but then the stream is empty :
> 
>  
> 
> [DotCMIS.Data.Impl.ContentStream]: {DotCMIS.Data.Impl.ContentStream}
> 
>     FileName: null
> 
>     Length: null
> 
>     MimeType: "application/pdf"
> 
>     Stream: {System.IO.BufferedStream}
> 
>  
> 
> How can i resolve this quickly ?
> 
> Thanks in advance,
> 
> Erwin Moll
> 
> 

Reply via email to