CMIS Repository

Liferay 6.1 introduced the ability to mount multiple repositories into the Documents and Media portlet (renamed from Document Library portlet).  One of the protocols it uses to mount third-party repositories is CMIS 1.0.

Credentials #

Most configurations are fairly straight forward.  The first thing you need to know is credentials.  In order to log into a CMIS repository, we need to basically pass the credentials you used in Liferay through to CMIS.  So, you need to make sure to set your to allow Liferay to store your password in the session:

Next, you need to make sure that the means in which you login to Liferay is the same as for your repository.  For most, this means that you need the same screenname.  So, in, I have:

This can alternatively be configured in the control panel under Portal Settings > Authentication.  Of course, what this means is that if I log into, say Nuxeo using "joeblogs" and "secretpassword", then I have to login to Liferay with those same credentials as well.

Most people would have some kind of an LDAP or something like this anyhow, so that should be fine.  Without the same credentials, obviously, you will have a principal exception and your users will be complaining to you about why they can't see their data.. you don't want that.

Mounting a Repository #

Now, startup your server and login as the administrator.  In the Documents and Media control panel, you will see under the "Add" menu a selection to add a repository.  After selecting that, you will be given a form that looks like you are adding a folder -- but instead, you are adding a new repository.

Select your repository type.  Most people would use CMIS AtomPub, but we have provided CMIS WebServices as well (but it's a pain because of all the different parameters you have to set… go with AtomPub if you can!).  The following are some of the most common AtomPub URLs for various vendor repositories:

Repository AtomPub URL
Alfresco 3.4 http://<host>/alfresco/service/cmis
Alfresco 4.x http://<host>/alfresco/cmisatom
IBM P8 http://<host>/p8cmis/resources/Service
Nuxeo http://<host>/nuxeo/atom/cmis

For CMIS, all of the entries are required with the exception of repositoryId.  If you do not enter a repositoryId, then it will just look for the first repository using the given parameters and set it to that -- many systems only have one.


  • Why do I get a CmisRuntimeException thrown when I search?  In some CMIS servers, you will get a response like this: "Function SCORE() used without matching CONTAINS() function" in their logs.  This is generally a problem with how the vendor is parsing the scoring keyword for search.  There's a workaround in Liferay where you can disable search scoring in your by setting the following parameter:  If you are using Alfresco 4.0.a, this is fixed in Alfresco 4.0.b.
  • How do I setup SSO with CMIS repositories?  Well, unfortunately, that's not possible.  As of right now, there are many vendor-specific ways of handling SSO, but nothing that is generic enough (e.g., the use of CAS) that we could put in Liferay's OOTB CMIS repository implementation.
  • Why do some files I create in IBM FileNet not seem to show up in Liferay?  This is discussed in the ticket LPS-20509.  Basically, this is a problem with the way IBM FileNet implements the CMIS Query Language which only returns major versions.  Hence, within Liferay, we will only create major versions if the vendor is IBM FileNet.
  • Why doesn't Sharepoint or Documentum work? I thought they support CMIS? In our tests, we have found some inconsistencies in how Sharepoint and Documentum have implemented CMIS. So, in Liferay 6.1 EE we have developed vendor-specific implementations for these two, while leveraging their proprietary APIs.
1 画像の固定
61689 参照数
平均 (1 投票)
コメント 作成者 日時
I am not able to configure it. It gives me... Amit Doshi 2012/05/08 5:19
Hi, I am also getting the same error as Amit.... Pranay R Patadiya 2012/06/05 5:09
Ditto, the previous 2 comments. It could at... Paul Solecki 2012/08/01 3:53
Has somebody successfully integrated LogicalDOC? Nicholas John Koch 2013/02/10 2:29
Hi everyone I had the same problem when I had... Angelos Varvitsiotis 2014/08/06 3:32
How to configure or get parameters of Liferay... Alexis Arnal 2014/10/15 13:12
Does the setting... Karl Edvard Balto 2014/10/22 5:35

I am not able to configure it. It gives me error message "Please verify your repository configuration parameters. " Can you please let me know what I am missing?
投稿日時:12/05/08 5:19
Hi, I am also getting the same error as Amit.
Any help ??
投稿日時:12/06/05 5:09
Ditto, the previous 2 comments.

It could at least explain why it's failing. I assume it's a 403 error as it's the wrong username/password or something but the error message given is useless.
投稿日時:12/08/01 3:53
Has somebody successfully integrated LogicalDOC?
投稿日時:13/02/10 2:29
Hi everyone

I had the same problem when I had NTLM enabled. In order for CMIS repository to work, it needs the current user's screenName (hence, otherwise Liferay knows you as user@domain) and password (hence - this stores the password in the session so that Liferay can re-use it for connecting to Alfresco).

If NTLM auth is enabled, the password is not known to Liferay (it is actually supplying a null password to Alfresco) and it fails. Disabling NTLM fixed it in our case.
投稿日時:14/08/06 3:32
How to configure or get parameters of Liferay cmis atompub url or webservice???
I need add Liferay repository to another Liferay Portal. I have 2 Liferay Portal. One is a version 6.1 and another is 6.2.

投稿日時:14/10/15 13:12
Does the setting in portal properties use the same algorithm? Liferay creates folders as if the CMIS repository is a standard filesystem, and probably use the Liferay filesystem version handling algorithm, instead of using the CMIS repository version handling. I am using Nuxeo as CMIS repository. Is it also possible to use a different root directory when adding repository with the Document and media portlet?
投稿日時:14/10/22 5:35