eXo Platform 3.0

- Prev
- Next

## Chapter 2. Configuration

## CMIS Configuration

To expose WCM drives to the CMIS repositories, you must make a special extension of CmisRegistry.

To make a typical component org.exoplatform.ecms.xcmis.sp.jcr.exo.DriveCmisRegistry, do as follows:

    <component>
       <type>org.exoplatform.ecms.xcmis.sp.jcr.exo.DriveCmisRegistry</type>
       <init-params>
          <!-- Disabled by default. Uncomment if you need query support in CMIS. -->
             <!-- value-param>
                <name>indexDir</name>
                <value>${gatein.jcr.index.data.dir}/cmis-index${container.name.suffix}</value>
             </value-param-->
          <value-param>
             <name>exo.cmis.renditions.persistent</name>
             <value>true</value>
          </value-param>
          <values-param>
             <name>renditionProviders</name>
             <description>Redition providers classes.</description>
             <!-- <value>org.xcmis.renditions.impl.PDFDocumentRenditionProvider</value> -->
             <value>org.xcmis.renditions.impl.ImageRenditionProvider</value>
          </values-param>
       </init-params>
    </component>

Where configuration parameters include:

- indexDir - directory where the lucene index will be placed. It is disabled by default.

- exo.cmis.renditions.persistent - should be document's rendition. (thumbnail) persisted in JCR. The allowed value is true or false.

- renditionProviders - set of FQN of classes which can be used as Rendition Providers. Classes which implement the org.xcmis.spi.RenditionProvider interface are used to preview the CMIS objects (thumbnails).

### Note

In most cases, it is not required to change anything in the xCIMIS configuration. In case of any change of the indexer storage location, donot comment the indexDir value parameter and point it to the actual location.

## Required nodetypes and namespaces in JCR

The following configuration is mandatory for JCR to work correctly.

    <external-component-plugins>
       <target-component>org.exoplatform.services.jcr.RepositoryService</target-component>
       <component-plugin>
          <name>add.namespaces</name>
          <set-method>addPlugin</set-method>
          <type>org.exoplatform.services.jcr.impl.AddNamespacesPlugin</type>
          <init-params>
             <properties-param>
                <name>namespaces</name>
                <property name="cmis" value="http://www.exoplatform.com/jcr/cmis/1.0"/>
                <property name="xcmis" value="http://www.exoplatform.com/jcr/xcmis/1.0"/>
             </properties-param>
          </init-params>
       </component-plugin>
       <component-plugin>
          <name>add.nodeType</name>
          <set-method>addPlugin</set-method>
          <type>org.exoplatform.services.jcr.impl.AddNodeTypePlugin</type>
          <init-params>
            <values-param>
                <name>autoCreatedInNewRepository</name>
                <description>Node types configuration file</description>
                <value>jar:/conf/cmis-nodetypes-config.xml</value>
             </values-param>
          </init-params>
       </component-plugin>
    </external-component-plugins>

## Authenticator and organization service configuration

An Authenticator is responsible for creating Identity Security Service Authenticator

The eXo CMIS service is based on:

- The authentication mechanism provided by the eXo organization service.

- The JAAS configuration of eXo Platform. For example,

    gatein-domain {
      org.exoplatform.web.security.PortalLoginModule required;
      org.exoplatform.services.security.jaas.SharedStateLoginModule required;
      org.exoplatform.services.security.j2ee.TomcatLoginModule required;
    };

- Prev
- Up
- Home
- Next