Incorrect ContentStreamURI property name

13 views
Skip to first unread message

Florent Guillaume

unread,
Mar 11, 2009, 5:52:18 PM3/11/09
to cmis-i...@googlegroups.com
Hi all,

I was having trouble making both CMIS Explorer and CMIS Spaces Air
downloading my files.
After much debugging I couldn't see what was wrong so I had a look at
Flex CMIS Client's sources and found out that you guys are using the
property "ContentStreamURI", when the correct one according to the
spec and its .xsd files is "ContentStreamUri".
So Alfresco is using a property that's not in the spec and you guys
are using that.

To avoid relying on the property name, if I could suggest something, I
think that to find the file URI it's better to use either the <link
rel="cmis-stream" href=""/>, currently required by the CMIS spec, or
the <content src=""/> URI, which is mandated by AtomPub. Alfresco
implements both.

Also, as the TC wants to move toward more AtomPub spirit, it's not
impossible that some or all redundant properties get removed, which is
why <content src=""/> is likely to be a future-proof method. Although
the suggested way of having multiple content streams per document is
based on having multiple <link rel="cmis-stream" href=""/>... So
whatever you think is better :)

Florent

--
Florent Guillaume, Head of R&D, Nuxeo
Open Source, Java EE based, Enterprise Content Management (ECM)
http://www.nuxeo.com http://www.nuxeo.org +33 1 40 33 79 87

Shane

unread,
Mar 11, 2009, 9:03:00 PM3/11/09
to CMIS Interoperability
Hi Florent,

You are absolutely right. I hadn't noticed the case issue. I'll update
my code to to use the content 'src' for now. I agree that it makes
sense to rely on the AtomPub spec.

Shane

On Mar 11, 4:52 pm, Florent Guillaume <florent.guilla...@gmail.com>
wrote:
> Open Source, Java EE based, Enterprise Content Management (ECM)http://www.nuxeo.com http://www.nuxeo.org  +33 1 40 33 79 87

Florent Guillaume

unread,
Mar 12, 2009, 11:36:38 AM3/12/09
to cmis-i...@googlegroups.com, David Caruana
David & Shane,

Actually, there's another bug in Alfresco, and CMIS Explorer at least
follows it (I haven't looked at CMIS Spaces):
The proper type for ContentStreamUri is URI, but Alfresco serves a
ContentStreamURI that is a String:
<cmis:propertyString cmis:name="ContentStreamURI">...
and of course CMIS Explorer to read it does:
doc.url = d.object.properties.propertyString.
(@name=='ContentStreamURI').value;

Florent

David Caruana

unread,
Mar 12, 2009, 1:00:47 PM3/12/09
to CMIS Interoperability
Thanks for reporting.

It just so happens I've fixed the ContentStreamUri name and type as
part of another task I'm working on. The fix is in the latest Alfresco
HEAD.

Shane Johnson

unread,
Mar 12, 2009, 1:12:00 PM3/12/09
to cmis-i...@googlegroups.com
For the time being I'm switching to the content 'src' as it is used in both Nuxeo and Alfresco and is the ATOM way.

I'm also updating the code to match on the ObjectTypeId instead of the cmis-type 'href'.

Shane

sreiner

unread,
Mar 12, 2009, 5:17:14 PM3/12/09
to CMIS Interoperability

CMIS Spaces bld5 download added

checks for both ContentStreamURI and ContentStreamUri properties

(and also has the Upload Files via dialog on Flex+AIR fixed/working
now)

To get the Upload Files via dialog on Flex+Browser
CMIS needs some sort of multipart form posting upload support
(since in non AIR you can't get at the bytes of files your uploading)

(and even for AIR having multipart would handle large files better,
use less memory)

also:
1. would be good on atom rest if search results had the content
stream uri values
2. would be good on web services if the get children, and search
results had the content stream property values

Steve

David Caruana

unread,
Mar 12, 2009, 6:03:43 PM3/12/09
to CMIS Interoperability
Hi Steve,

It might be worth considering the src link, instead of
ContentStreamUri.

> 1. would be good on atom rest if search results had the content
> stream uri values

If you select ContentStreamUri it will be present in the result set.
I've fixed the Alfresco impl. so that a value is actually provided.

I'll check if the src link should be available too. However, the
specification for the result set binding is very ambiguous.

> 2. would be good on web services if the get children, and search
> results had the content stream property values

Will look into this.

> To get the Upload Files via dialog on Flex+Browser
> CMIS needs some sort of multipart form posting upload support
> (since in non AIR you can't get at the bytes of files your uploading)

Good point. This is probably something for the TC to consider.

Dave
Reply all
Reply to author
Forward
0 new messages