2.10. JCR Organization Service

2.10.1. Configuration
2.10.2. Migration

Warning

You are looking at documentation for an older release. Not what you want? See the current release documentation.

JCR Organization Service is an implementation of the exo.core.component.organization.api API. The information will be stored in the exo:organization root node of the workspace. The workspace name has to be configured in the configuration file.

  1. Open $PLATFORM_TOMCAT_HOME/webapps/portal/WEB-INF/conf/configuration.xml, then replace <import>war:/conf/organization/idm-configuration.xml</import> with <import>war:/conf/organization/exo/jcr-configuration.xml</import>.

  2. Create the jcr-configuration.xml file in the $PLATFORM_TOMCAT_HOME/webapps/portal/WEB-INF/conf/organization/exo directory and fill in the following content:

    
    <configuration
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.exoplaform.org/xml/ns/kernel_1_2.xsd http://www.exoplaform.org/xml/ns/kernel_1_2.xsd"
       xmlns="http://www.exoplaform.org/xml/ns/kernel_1_2.xsd">

      <component>
        <key>org.exoplatform.services.organization.OrganizationService</key>
        <type>org.exoplatform.services.jcr.ext.organization.JCROrganizationServiceImpl</type>
        <init-params>
          <value-param>
            <name>storage-workspace</name>
            <description>Workspace in default repository where organization storage will be created</description>
            <value>collaboration</value>
          </value-param>
        </init-params>
       </component>

      <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="jos" value="http://www.exoplatform.com/jcr-services/organization-service/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/organization-nodetypes.xml</value>
            </values-param>
          </init-params>
        </component-plugin>
      </external-component-plugins>
    </configuration>
    • In which, storage-workspace is the workspace name in the default repository where the organization storage will be created. If storage-workspace is absent in configuration, the default workspace will be selected in the current repository.

  3. Start eXo Platform server.

eXo starts and auto-creates its organization model in the /exo:organization node.

Now eXo uses your JCR node as its organization model storage. Users, groups and memberships are now stored and retrieved from there.

Copyright ©. All rights reserved. eXo Platform SAS
blog comments powered byDisqus