Select Page

While working on a recent project this spring, I learned a few new things about Alfresco’s CMIS implementation in Alfresco 3.4. Generally speaking the Alfresco CMIS wiki page and the mapping page (which explains their mapping of the CMIS domain model) cover Alfresco’s implementation very thoroughly. I ran into two situations which I spent a little time on and hopefully I can save you some time if you’re working with CMIS against Alfresco.

The first is represented by ALF-7538. Until Alfresco Enterprise 3.4.2 it was not possible to retrieve associations defined in the content model by an aspect. Consider a content model with an aspect which defines an association within an aspect. If that aspect is applied to your content item, you are not able to reach that aspect via the CMIS API. The alternatives are to model your association directly on the type or sub-type of the content node. As of Alfresco 3.4.2 this is resolved, but take note that the association must be between two derivations of cm:content.

The second is represented by ALF 7827. The search operation using the CMIS API does not support TEXT, ALL and d:content as is expected. There’s a thread on the Alfresco Forum between myself and Andy Hind who’s responsible for the CMIS search implementation. My use case was to simply mimic the search results found in Alfresco Share via a CMIS API call. In short, I found that a query like:

select * from cmis:document where CONTAINS('test')

would not return content as expected. Ultimately my goal was to search all indexed fields for the given content type. The thread discusses a way to do this and there’s a fix already implemented for Alfresco 3.4.3.

In both cases I was able to work around these issues. The Alfresco engineering team provided assistance in either the JIRA issue that was filed, or the Alfresco forum to help me along.

Pin It on Pinterest

Sharing is caring

Share this post with your friends!