Installing the MOSS 2007 Custom Web Services

Overview

UNIFYBroker/Microsoft SharePoint requires a number of custom web services to be successfully deployed in order to fully utilize the capabilities of the platform. Microsoft Office SharePoint Server 2007 and Windows SharePoint Services both use Web Services for remote method invocation.

Three custom web services are required to take full advantage of connectivity to SharePoint.

  • User Profile Bulk Transfer Service
  • User Migration Service
  • User Deletion Extension Service

Installing the web services

Each of the three web services are installed and configured in an identical fashion. Deploy the following installer files and deploy them to each SharePoint server located in the farm.

  • UNIFY User Profile Bulk Transfer Service for SharePoint.msi
  • UNIFY User Profile Deletion Service for SharePoint.msi
  • UNIFY User Profile Migration Service for SharePoint.msi

After running the MSI for each of these, browse to the %ProgramFiles%\UNIFY Solutions\ directory, and locate the directory for each web service.


Within each directory, the following can be found:

  • A single DLL file
  • An .asmx file
  • Two .aspx files, one representing the service WSDL, the other the discovery file for SharePoint
  • The wss_unifysolutionstrust.config file
  • A Documentation directory, containing a PDF outlining the configuration process.

Configuring the web services

For each web service, the following process needs to take place:

Copy the dll of the web service into the C:\Inetpub\wwwroot\wss\VirtualDirectories\80\bin on the server.

Copy the aspx and asmx files to the %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\12\ISAPI directory


In the above ISAPI directory, open the spdisco.aspx file and add the below configuration to the discovery element.

<contractRef ref=""<%SPHttpUtility.AddQuote(SPHttpUtility.HtmlEncode(spWeb.Url + "/_vti_bin/UserProfileBulkTransferWebService.asmx?wsdl"),Response.Output="");%>
    docRef=<% SPHttpUtility.AddQuote(SPHttpUtility.HtmlEncode(spWeb.Url +"/_vti_bin/UserProfileBulkTransferWebService.asmx"),Response.Output); %> xmlns="http://schemas.xmlsoap.org/disco/scl/" />
<discoveryRef ref=""<%SPHttpUtility.AddQuote(SPHttpUtility.HtmlEncode(spWeb.Url + "/_vti_bin/UserProfileBulkTransferWebService.asmx?disco"),Response.Output=""); %>
    xmlns="http://schemas.xmlsoap.org/disco/" />
<contractRef ref=""<%SPHttpUtility.AddQuote(SPHttpUtility.HtmlEncode(spWeb.Url + "/_vti_bin/UserProfileMigrationService.asmx?wsdl"),Response.Output); %>
    docRef=<% SPHttpUtility.AddQuote(SPHttpUtility.HtmlEncode(spWeb.Url + "/_vti_bin/UserProfileMigrationService.asmx"),Response.Output); %> xmlns="http://schemas.xmlsoap.org/disco/scl/" />
<discoveryRef ref=""<%SPHttpUtility.AddQuote(SPHttpUtility.HtmlEncode(spWeb.Url + "/_vti_bin/UserProfileMigrationService.asmx?disco"),Response.Output); %>
    xmlns="http://schemas.xmlsoap.org/disco/" />
<contractRef ref=""<%SPHttpUtility.AddQuote(SPHttpUtility.HtmlEncode(spWeb.Url + "/_vti_bin/UserProfileDeletionExtensionService.asmx?wsdl"),Response.Output); %>
    docRef=<% SPHttpUtility.AddQuote(SPHttpUtility.HtmlEncode(spWeb.Url +"/_vti_bin/UserProfileDeletionExtensionService.asmx"),Response.Output); %> xmlns="http://schemas.xmlsoap.org/disco/scl/" />
<discoveryRef ref=""<%SPHttpUtility.AddQuote(SPHttpUtility.HtmlEncode(spWeb.Url + "/_vti_bin/UserProfileDeletionExtensionService.asmx?disco"),Response.Output); %>
    xmlns="http://schemas.xmlsoap.org/disco/" />

Place the wss_unifysolutionstrust.config file in the %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\12\CONFIG directory


Add the following element to the securityPolicy element in the web.config file in the C:\Inetpub\wwwroot\wss\VirtualDirectories\80 directory.

<trustLevel name="WSS_UnifySolutionsTrust" policyFile="C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\config\wss_unifysolutionstrust.config" />

In the same file, modify the trust element as follows. Note that this is only valid if the server doesn't already have a custom trust level associated with it. Consult a SharePoint administrator if the situation is more complicated than this.

<trust level="WSS_UnifySolutionsTrust" originUrl="" />

Verify that the web services have been successfully configured by browsing to the following URLs:

If configuration has been successful, the service definition will be successfully displayed.


Is this article helpful for you?