This information is intended to compliment and not replace the official documentation on TechNet:
Configure and use the Documentum connector in SharePoint Server 2013
So you have downloaded the SharePoint 2013 Documentum Connector, and you can't wait to zip through the install wizard and get to crawling your Documentum repositories. Hang on one minute. There are some important prerequisites you should be aware of. The TechNet article describes the requirements in the "Before you begin" section of the document.
Your Documentum Environment
Unless you are a Documentum expert, it may not be clear how the SharePoint connector retrieves the content in a Documentum repository for indexing.
The Documentum Content Server manages the repository, which can contain objects like cabinets, folders, and documents. The repository can only be accessed through the Content Server.
The Documentum Foundations Service (DFS) is a web service that provides access to the Content Server to external clients like the SharePoint connector. Client DLLs are provided by EMC for a variety of frameworks, including .NET. Typically, the DFS server will be separate from the content server, but they can run on the same host in small environments.
EMC DFS Productivity Layer DLLs
There are four DLLs from EMC DFS SDK that the DCTM connector uses to connect to the remote DFS service. These need to be loaded into the .NET Global Assembly Cache on all the servers where the connector is installed, which should be all SharePoint farm application servers running a Crawl Component.
Previous versions of the connector used DLLs from DFS Productivity Layer v6.5 with SP2 and DFS hotfix 1049 (126.96.36.199). However, the May 2013 release of the SP2013 DCTM connector has been updated to use DFS Productivity Layer 6.7 SP2 (6.7.2000.36). This version is more readily available from EMC and enables forward compatibility with Documentum 7.x.
You can download the emc-dfs-sdk-6.7 zip package and extract the DLLs from:
In Windows Server 2012, I had trouble dragging-and-dropping the DLLs into the GAC while UAC was enabled. Instead of turning off UAC, I used the 'gacutil.exe' tool which is available as part of a .NET SDK:
C:\EMC_DFS_6.7SP2_DLLs> gacutil.exe /i .\Emc.Documentum.FS.DataModel.Core.dll
Microsoft (R) .NET Global Assembly Cache Utility. Version 3.5.30729.1
Copyright (c) Microsoft Corporation. All rights reserved.
Assembly successfully added to the cache
When it's done, you should see all four global assemblies in C:\Windows\assembly:
Editing the machine.config
The TechNet guide provides an XML snippet that needs to be pasted into the .NET v4 machine.config. The guide is not totally clear on where to put it in the file. In my testing, it worked when I put the snippet immediately after the only instance of the tag " <system.serviceModel>" near the end of the file, like this:
<!-- Paste the XML snippet here -->
If needed, changes can be made to these parameters for the DfsDefaultService binding, including:
- Transport elements - to enable an SSL connection to the DFS web service
I also had a customer report mysteriously losing the changes in their machine.config after applying patches, so double-check this if you are having issues crawling Documentum content.
If the prerequisite steps have been completed, then the actual connector install wizard should be straight-forward. The default installation directory is:
C:\Program Files\Common Files\microsoft shared\Web Server Extensions\15\CONFIG\SearchConnectors\Documentum
If you encounter an error that says "The signature or catalog could not be verified or is not valid," then you have issues with the strong-named assemblies and you probably have an older version of the connector installer.
Then follow the instructions to register the indexing connector with your Search Service Application.
Hopefully this information helped you get through the prerequisites and installation of the SP2013 Documentum Indexing Connector. I plan to cover connector configuration in a follow-up post. Please share your feedback in a comment, and feel free to post corrections to what I have said.