6 Configuring the BDSS Connector for Microsoft Exchange 2007

This chapter describes the profile parameters for the Oracle BDSS Connector for Microsoft Exchange 2007 (the Exchange 2007 Connector).

This chapter includes the following topics:

6.1 Overview of Exchange 2007 Connector Configuration

As described in Section 4.8, "Managing Profiles," you can create or update the configuration profile for a connector using the setProfileParameter operation. The Exchange 2007 Connector ships with the following profiles:

  • Hub Transport

  • Task

  • Contact

  • Calendar

  • Active Directory

  • Auto Discovery

  • Event Receiver

6.2 Configuring the Microsoft Exchange 2007 Connector for Data Exchange

The Hub Transport section includes the following parameters (listed in Table 6-1), which enable the Exchange 2007 Connector to communicate with the Hub. For information on the Hub Transport, see Section 2.2.1, "Hub Transport."

Note:

You must create the parameters listed in Table 6-1 using the setProfileParameter operation. The profile name must be the name of the connector. For more information, Section 4.8.2, "Managing Profile Parameters."

Table 6-1 Parameters of the Hub Transport Section

Parameter Description

Pim Transport Implementation Class

oracle.bdss.connectors.exchange2007.Exchange2007PimTransportAdapter

Extract Response Batch Size

The number of records in an extract response. For Oracle Fusion Middleware 11g release 2 of BDSS, set this value to represent a large number (10,000 or more) of records, so that it exceeds the number of records in any given Exchange folder configured for synchronization for a user. Typically, most users have thousands of records as opposed to tens of thousands of records.


6.3 Configuring Record Transformation for the Exchange 2007 Connector

The parameters of the hubDomainName section (listed in Table 6-2) enable you to configure the Exchange 2007 Connector to perform translations of record data to and from the Hub format to the PIM format by setting the URL locations of the XSLT and XSD files.

Note:

If you configure the parameters to use URIs for the transformation files, do not use the file:///./ form. Instead, enter the URI in the following form:

C:/directory1/directory2.../file.NNN

For example, if c:/fusion_sync is the <root> directory for transformer files, enter the following URI:

c:/fusion_sync/transform/exchange/task/exchange2007task.xsd

Table 6-2 Parameters of the hubDomainName Section

Parameter Description

HubToPimXSL

The URL to the location of the XSL file that transforms a record from the Hub XML format to a PIM XML format.

PimToHubXSL

The URL to the location of the XSL file that transforms a record in a PIM XML format to the Hub XML format.

PimXSD

The URL to the location of the XSD for the PIM domain.


6.4 Configuring the Microsoft Exchange 2007 Connector's PIM Transport Component

Use the parameters of the PimTransport section (listed in Table 6-3) to set the Microsoft Exchange 2007 Connector's PIM Transport component.

Table 6-3 The PimTransport Section Parameter

Parameter Description

TryUrlsWithoutDomain

If set to true, then the PIM Transport attempts the autodiscover, LDAP, and EWS URLs that do not contain the domain. The default is false.


6.5 Configuring Domain Synchronization

The Exchange 2007 Connector enables you to configure domain synchronization through its Contact, Task, and Calendar sections.

6.5.1 Configuring Contact Synchronization

The parameters of the Contact section (listed in Table 6-4) enable the Exchange 2007 Connector to synchronize the Contact domain.

Table 6-4 Parameters for Configuring Contact Domain Synchronization

Parameter Description

Folder Class

The Folder class for the domain. The default value is IPF.Contact.

Pim Domain Id

The PIM domain identifier, used as the message class property for each class that is synchronized. The default value is IPM.Contact.

Pim Xsd

The URI of the exchange2007contact.xsd file.

PimToHubUrl

The URI of the Exchange2007ContactToHubContact.xsl.

HubToPimUrl

The URI of the HubContactToExchange2007Contact.xsl.


6.5.2 Configuring Task Synchronization

The parameters of the Task section (listed in Table 6-5) enable the Exchange 2007 Connector to synchronize the Task domain.

Table 6-5 Parameters for Configuring Task Domain Synchronization

Parameter Description

Pim Xsd

The URI of to the exchange2007task.xsd file.

PimToHubUrl

The URI of to the Exchange2007TaskToHubTask.xsl.

HubToPimUrl

The URI of to the HubTaskToExchange2007Task.xsl.

Domain Class Type

The Exchange Web Service interface class that is used when synchronizing the domain. The default value is TaskType.

Exchange Domain Batch Size

The maximum number of records downloaded from Exchange when extracting records from the domain target. Valid values are 1 through 512. The default value is 512.

Folder Class

The folder class for the domain. The default value is IPF.Task.

Body Type

How the Body field for the domain is synchronized. Valid values are Text or HTML. The default value is Text.

Conflict Resolution Type

Determines how Exchange handles a conflict type. Valid values are AutoResolve, AlwaysOverwrite, and NeverOverwrite. The default value is AlwaysOverwrite.

Disposal Type

Determines how Exchange handles deleted records. Valid values are HardDelete, SoftDelete, and MoveToDeletedItems. The default value is MoveToDeletedItems.

Pim Domain id

The PIM domain identifier, used as the message class property for each synchronizing record. The default value is IPM.Task.


6.5.3 Configuring Calendar Synchronization

The parameters of the Calendar section (listed in Table 6-6) enable the Exchange 2007 Connector to synchronize the Calendar domain.

Table 6-6 Parameters for Configuring Calendar Domain Synchronization

Parameter Description

Time Zone Xsd

The URI to timezoneregistryschema.xsd.

VEvent Xsd

The URI to veventasxml.xsd.

PimToHubUrl

The URI to exchange2007calendartohubcalendar.xsl.

Pim Xsd

The URI to pimicalbody.xsd.

Calendar Item Type Xsd

The URI to calendaritemtype.xsd.

Time Zone Xml

The URI to timezoneregistry.xml.

HubToPimUrl

The URI to hubcalendartoexchange2007calendar.xsl.

CalendarItemToVEvent Xsl

The URI to calendaritemtypetoveventasxml.xsl.

VEventToCalendarItem Xsl

The URI to veventasxmltocalendaritemtype.xsl.

Body Type

The URI to veventasxmltocalendaritemtype.xsl. The default value is Text.

Conflict Resolution Type

Determines how Exchange handles a conflict type. Valid values are AutoResolve, AlwaysOverwrite, and NeverOverwrite.The default value is AlwaysOverwrite.

Disposal Type

Determines how Exchange handles deleted records. Valid values are HardDelete, SoftDelete, and MoveToDeletedItems. The default value is MovetoDeletedItems.

Domain Class Type

The Exchange Web Service interface class that is used when synchronizing a domain. The default value is CalendarItemType.

Exchange Domain Batch Size

The maximum number of records downloaded from Exchange when extracting records from the domain target. Valid values are 1 to 512, inclusive. The default value is 512.

Fanning Limit

The number of records created when a recurring calendar record cannot be natively represented in Exchange. Valid values are 1 to 100, inclusive. The default value is 30.

Folder Class

The folder class for the domain. The default value is IPF.Appointment.

Pim Domain id

The PIM domain identifier, used as the message class property of each record synchronized. The default value is IPM.Appointment.


6.6 Configuring Data Filtering

Filtering controls the records that are synchronized by the Exchange 2007 connector. For example, you can define a filter that ignores public records but synchronizes only public records. Filters are defined in an XML file. There is one such XML file per domain. BDSS ships with the following filters:

  • Contact—Specifies records having an IPM.Contact item class should synchronize.

  • Task—The filter specifies that records having an IPM.Task item class and a Due Date after 2009-12-31T00:00:00 should synchronize.

  • Calendar—The filter specifies that records having an IPM.Appointment class and an End Date after 2009-12-31T00:00:00 should synchronize.

Table 6-7 lists the filtering parameters for the Contact domain.

Table 6-7 Parameters for Configuring Contact Filtering

Parameter Description

Filter Condition

The URI to contactfilter.xml.

Body Type

How the Body field for the domain is synchronized. Valid values are Text or HTML. The default value is Text.

Conflict Resolution Type

Determines how Exchange handles a conflict type. Value values are AutoResolve, AlwaysOverwrite, and NeverOverwrite. The default value is AlwaysOverwrite.

Disposal Type

Determines how Exchange handles deleted records. Valid values are HardDelete, SoftDelete, and MoveToDeletedItems. The default value is MoveToDeletedItems.

Domain Class Type

The Exchange Web Service interface class that is used when synchronizing the domain. The default value is ContactItemType.

Exchange Domain Batch Size

The maximum number of records downloaded from Exchange when extracting records from the domain target. Valid values are 1 through 512. The default value is 512.

Folder Class

The folder class for the domain. The default value is IPF.Contact.

Pim Domain Id

The PIM domain identifier, used as the message class property of each record synchronized. The default value is IPF.Contact.


Table 6-8 lists the parameters for task filtering.

Table 6-8 Parameters for Configuring Task Filtering

Parameter Description

Filter Condition

The URI to taskfilter.xml.


Table 6-9 lists the parameters for calendar filtering.

Table 6-9 Parameters for Configuring Calendar Filtering

Parameter Description

Filter Condition

The URI to calendarfilter.xml.


6.7 Configuring the Microsoft Exchange 2007 Connector to Use Active Directory

The parameters of the Active Directory section (listed in Table 6-10) enable you to configure the Exchange 2007 Connector to use Microsoft Active Directory to query for and obtain Autodiscover SCP URLs.

Table 6-10 Parameters for the Active Directory Section

Parameter Description

Port

The LDAP port number used when querying the Active Directory. The default port is 636 for secure LDAP. The non-secure port is typically 389.

ServerN (where N is a unique, nonzero ordinal that specifies an order preference).

Enter the name of the Active Directory server. The connector uses the name in the LDAP URL when querying the Active Directory. For example, if you enter server360007, then the connector uses ldap://server36007:<ldapPort>/... If you enter server36007.example.com, then the connector uses ldap://server36007.example.com:<ldapPort>...

Use SSL

Whether the connector should use secure LDAP. The default is value is true. In a development environment, set the value to false because the Domain Controller is not enabled for secure LDAP.

Referral

Can be follow, throw or defer. The default value is follow.

Max Query Result Size

Max number of results to return per Active Directory query. The default value is 20.

Max Query Time

The time (in milliseconds) to wait for an Active Directory query to return. The default value is 30 seconds (30000 milliseconds).

Read Timeout

The time (in milliseconds) to wait for a response before timing out. The default value is 5000.

Connect Timeout

The time (in milliseconds) to establish a connection to Active Directory before timing out. The default value is 5000.

Client Certificate Path

Set to true if Use SSL is set to true and the Domain Controller requires a client certificate. The default value is false.

Using Client Certificates

Indicates if the client provider uses LDAP certificates. The default value is false.


6.8 Configuring Event Receiving for the Exchange 2007 Connector

The parameters of the Event Receiver Section (listed in Table 6-11), enable you to configure the event receiver, a web service-based component used by the Exchange 2007 Connector's PIM Transport for event notification. The event receiver establishes subscriptions for Create, Update, and Delete events for each user, maintains the subscription metadata, receives change events from a client-access server, and informs BDSS when users have changes that require synchronization through the Runtime Library API.

Table 6-11 Parameters for the Event Receiver Section

Parameter Description

CHANGE_ME

The name of an Exchange 2007 connector as it appears in the NAME Column of the CONNECTORS table. The default value should be the URL of the deployed event receiver for the connector.

Status Frequency

The frequency, in minutes, that Exchange provides a notification for each subscription. The default value is 1.

Subscription Status Factor

The event receiver performs a check on all subscriptions to verify that the Exchange server has not terminated any subscriptions. This parameter sets frequency in which this check occurs. The frequency in which this check occurs is the value set for this parameter multiplied by the value set for the Status Frequency parameter. For example, if you set the Status Frequency parameter to 1 minute, and then set the Subscription Status Factory parameter to 3, then the event receiver performs the subscription check every 3 minutes. The default value is 3.


6.9 Configuring the Exchange 2007 Connector to Use the Microsoft Autodiscover Service

The Exchange 2007 Connector attempts to discover information about a user's Exchange account by querying the Microsoft Exchange 2007 Autodiscover service. There are Service Connection Point (SCP) URLs that point to the locations where the service is available. The connector does the following when attempting to discover a user:

  1. Try each configured SCPN URL

  2. If that fails, query each Active Directory server listed in the ServerN configuration for a list of SCP URLs and attempt each of them.

  3. If the first two steps fail, the connector attempts the following default URLs:

    • <protocol>://<domainName>:<port>/autodiscover/autodiscover.xml

    • <protocol>://<domainName>.autodiscover:<port>/autodiscover/autodiscover.xml

Using the parameters listed in Table 6-12, the Exchange 2007 Connector can forgo searching for the Autodiscover service if you provide the SCPN URLs.

Table 6-12 lists the following parameters of Auto Discovery section that enable you to configure the connector to use the Microsoft Exchange 2007 Autodiscover service.

Table 6-12 Parameters of the Auto Discovery Section

Parameter Description

SCPN (where N is a unique, nonzero ordinal that specifies an order preference).

Enter either a full URL to the location of an Exchange Autodiscover service or the name of the server that runs the Autodiscover service. If you enter the URL to the location of an Exchange Autodiscover server, then the URL is constructed to include the given entry as follows:

<protocol>://<configuredValue>:<port>/autodiscover/autodiscover.xml

You can have 1 or more rows if and only if each SCPN is unique. When discovering a user, the connector tries each URL in the order specified by the SCPN parameter. For example, the URL for SCP1 is tried before the URL for SCP2, and so on.

Port

The port used for sending HTTP requests for user discovery. The default value is the typical SSL port, 443. Set the value to the HTTPS port if Use SSL is set to true. If it is set to false, then this value should be the HTTP port. The value is only used when attempting default SCP URLs (which are attempted when all SCP URLS have been tried (those in the SCPN configuration and those obtained from AD per the Servern configuration)

UseSSL

Indicates whether to use secure HTTP (SSL) when sending HTTP requests to discover users. The default value is true.

Remove Domain From Urls

Directs the connector to remove the domain information from a discovered SCP URLs obtained from Active Directory.

For the development environment, set the value to true because DNS prevents the URL from being resolved when the URL contains a domain (that is, http://server360007.example.com/autodiscover/autodiscover.xml does not work). When the option set to true, the URL becomes http://server360007/autodiscover/autodiscover.xml

Read Timeout

The time (in milliseconds) to wait for a response before timing out. The default value is 5000.

Connect Timeout

The time (in milliseconds) to establish a connection to Auto Discover server before timing out. The default is 5000

Client Certificate Path

Set this value to the location of the PEM (Privacy Enhance Mail security certificate) file containing the client certificate that is used if Auto Discover requires client certificates

Client Certificate Key Path

Set this value to the location of the PEM (Privacy Enhance Mail security certificate) file containing the client certificate private key


6.10 Testing Domain Synchronization using the Exchange 2007 Connector

You can use the Exchange 2007 Connector for reflective synchronization. You can test the Hub's synchronization of the Task, Contact, and Calendar domains using the Exchange 2007 Connector, because it provides synchronization for multiple Hub domains. You can configure the Exchange 2007 Connector to present itself as any type of PIM server to the Hub, because server type is irrelevant to the Hub. If you configure a second Exchange 2007 Connector using the same PIM server type, the Hub can then synchronize between two different Exchange users as if it were synchronizing between two users of different PIM servers.

To test Hub synchronization:

  1. Configure the Pim Transport Implementation Class and Extract Response Batch Size parameters for each Exchange 2007 Connector whereby the value for the Profile is the name of the connector as it appears in the NAME column of the CONNECTORS table. For example, suppose you have deployed a single Exchange 2007 Connector and want to use the single instance to synchronize two Exchange 2007 users that are mapped to a single Hub user. Further, assume that Exchange2007 and Exchange2007_2 are in the NAME column of the CONNECTORS table and both have a SERVER_TYPE_CD corresponding to the Exchange2007 LOV value.

  2. Add the following four rows to the PROFILES table using the setProfileParameter of the ProfileRuntimeInfo MBean. For more information, see Section 4.8, "Managing Profiles."

    Table 6-13 Adding Profiles to Test Synchronization

    Profile Section Parameter Value

    Exchange2007

    Hub Transport

    Pim Transport Implementation Class

    oracle.bdss.connectors.exchange2007

    pimtransport.PimTransportAdapter

    Exchange2007

    Hub Transport

    Extract Response Batch Size

    100000

    Exchange2007_2

    Hub Transport

    Pim Transport Implementation Class

    oracle.bdss.connectors.exchange2007.pimtransport.PimTransportAdapter

    Exchange2007_2

    Hub Transport

    Extract Response Batch Size

    100000