Skip navigation.

Setup Guide

  Previous Next vertical dots separating previous/next from contents/index/pdf Contents View as PDF   Get Adobe Reader

Exchange Service

This chapter describes the Exchange Service architecture, installation, and configuration and supported platforms.

Note: This chapter is applicable only if you are running MS Exchange 5.5, 2000 or 2003 and choose to leverage the Exchange Service. If you are running MS Exchange 2000/2003, you have the option of using the WebDAV Provider which does not require the installation of the Exchange Service.

 


Getting Started

The following is required to install and configure the Exchange Service:

 


Architecture

WebLogic Portlets for Groupware Integration leverage a native Windows service (the Exchange Service) which exposes Microsoft Exchange 5.5 (and later) functionality. The Exchange Service acts as an intermediary between the BEA WebLogic Portal and Microsoft Exchange .

SOAP Interface

The connectivity between Java and the Exchange Service is implemented using SOAP (Simple Object Access Protocol) version 1.1. SOAP provides a standard means of XML-based messaging (including RPC or Remote Procedure Call style messaging) that can be used across platforms.

On the Exchange Service side, IIS is used to handle SOAP communication with the client. A component handles requests from the client and sends them to another process on the same machine using local RPC. This process isolation insures that Exchange communication is not occurring in-process with IIS.

Connectivity to Exchange

Connectivity to Microsoft Exchange is implemented in a Windows service called the Exchange Service. The Exchange Service runs as a standalone process and exposes its functionality via local RPC to other processes in the system (including IIS). When requests come in, they are given a thread out of a thread pool that grows and shrinks automatically as necessary. Sessions that have been open for longer than the time-out period are automatically closed to avoid holding resources open unnecessarily.

The Exchange Service is implemented using a combination of MAPI (Messaging Application Programming Interface) and CDO (Collaboration Data Objects); therefore. CDO and MAPI from an Exchange Server CD are prerequisites for installation. This is where CDO and the MAPI provider for Exchange are obtained.

Network/Firewall Requirements

The Exchange Service must be located either on the same domain as the Exchange server or a trusted domain. Additionally, it must be configured to allow logins from the Exchange users who will be accessing their mailboxes. This requirement exists because the user logging on to Exchange actually performs a login to the Exchange Service machine to obtain a primary access token.

Note: It is possible to put the Exchange Service on the Exchange server itself, but be aware of the additional processor and memory burden that will be placed on Exchange.

HTTP or HTTPS traffic must be able to pass between the Portal and the Exchange Service. Traversing an HTTP proxy is acceptable as long as it is able to pass the POST requests used by the SOAP protocol. Although a high-bandwidth, low-latency connection improves performance, the protocol has been designed to reduce the number of round trips made on the network. The amount of bandwidth required depends on the number of users simultaneously using the application. Each user may consume roughly 1K/sec on average, with this number increasingly dramatically if users do a lot of work with large file attachments.

MSRPC traffic must be able to pass between the Exchange Service and Microsoft Exchange. MSRPC requires TCP port 135 to be open plus a range of ports above 1024. The network connection for this MSRPC traffic must have a low latency (less than 10 milliseconds, and preferably a 100 megabit LAN with less then 1 millisecond response times). Round trips are made over the network for each MAPI RPC, therefore the Exchange Service machine must be located as close as possible to Exchange on the network.

 


Installation and Configuration

This section describes various methods for installation and configuration for the Exchange Service.

Prerequisites

The Exchange Service must be installed on a clean Windows 2000 (with Service Pack 3 or higher) or Windows Server 2003 with IIS. Windows 2000 Professional may be used for testing purposes, but it only allows 100 simultaneous socket connections at a time — a limit that you will likely run into in production.

Warning: If you are using a machine which already has other software installed on it, proceed at your own risk; however, it MUST not have Microsoft Outlook on it or any other product which installs a different version of CDO.

CDO and the MAPI Exchange Service provider are a prerequisite of the installation. They may only be obtained using one of the two methods below. You may not install CDO using any version of Microsoft Outlook. If you do, it may initially work but Microsoft does not support use the dlls that ship with Outlook in server applications, so you may run into issues under high server load.

The MAPI Exchange Service Provider and CDO (Collaboration Data Objects) may be installed in one of two ways:

Method 1: Installing the Exchange 5.5 Administrator from the Exchange 5.5 Server CD

  1. Insert the Microsoft Exchange 5.5 Server CD.

Note: If you are running Exchange 2000, this 5.5 CD also ships with Exchange 2000 distributions.

  1. Choose Setup Server and Components.
  2. Choose Microsoft Exchange Server 5.5.
  3. Choose Complete / Custom.
  4. Choose Microsoft Exchange Administrator only install (uncheck all other boxes).
  5. Enter the license key.
  6. Install Exchange 5.5 Service Pack 4 (http://www.microsoft.com/exchange/downloads/55/sp4.asp). This should upgrade cdo.dll to version 5.5.2653.12 (may be checked by right-clicking the dll in Explorer and going to the Version tab).
  7. Install the proper CDO patch (available at http://support.microsoft.com/default.aspx?scid=kb;en-us;818709). This should upgrade cdo.dll to version 5.5.2657.55 or later (may be checked by right-clicking the dll in Explorer and going to the Version tab).
  8. Warning: If you do not perform this step then CDO and the Exchange Service will crash when accessing mailboxes that have been used by Outlook 2003.

Method 2: Installing a Full Exchange Server from the Exchange 5.5, Exchange 2000, or Exchange 2003 CDs

CDO 1.2.1 is installed with all versions of Exchange 5.5, Exchange 2000, and Exchange 2003. However, in some cases the cdo.dll that gets installed may not be registered during the installation. To be sure that cdo.dll is registered on your Exchange server, perform the following steps after Exchange has been installed:

  1. Open a command prompt.
  2. Change directories using the cd command to exchsrvr\bin (depends on where you have Exchange installed).
  3. Run regsvr32.exe cdo.dll to register CDO.

After CDO is registered, upgrade your Exchange server to the latest service pack so that the latest CDO is included.

For Exchange 5.5 Only: Follow step 8 on page 2-4 to obtain the latest CDO patches. After the installation, you may stop all Microsoft Exchange related services in Administrative Tools > Services so that you do not actually use the server itself.

Running the Installer

After installing WebLogic Portlets for Groupware Integration, an executable called setup_service.exe is placed in %COMPOZE_HOME%\service\exchange. Run this executable on the Exchange Service machine. During the installation, you will be prompted to specify the location of two important directories:

Assuming you have installed the prerequisites, the installation will install the Exchange Service and register the SOAP component with IIS.

For Windows 2003/IIS 6.0 Installations: For security reasons, the default configuration for IIS 6.0 does not serve any dynamic content. You must go to Administrative Tools > Internet Services Manager > Web Service Extensions and add a czexsoap web service then add c:\Program Files\Common Files\MSSOAP\Binaries\SOAPIS30.dll and the full path to the Exchange Service install file czex_soap.dll. For example c:\Program Files\compoze\czex\bin\czex_soap.dll) to the allow list. Otherwise, you will get an HTTP 401 (not found) error when trying to connect to the service.

Verifying the Installation

After the Exchange Service installation, you can verify that it was installed properly by checking the following:

  1. You should have a directory tree located in c:\Program Files\compoze\czex (or wherever you chose to install the Exchange Service). This is the %COMPOZE_EXCHANGE_SERVICE_HOME%.
  2. There should be a new service in Administrative Tools > Services called Compoze Exchange Service. It should be started.
  3. There should be a new IIS virtual root in Administrative Tools > Internet Services Manager called czexsoap. In this virtual root should be two files: CzExSoap.WSDL and CzExSoap.wsdl.
  4. If you are upgrading from a previous installation of Exchange Service, check the version number of %COMPOZE_EXCHANGE_SERVICE_HOME%\bin\czex_soap.dll by right clicking the file in Explorer and choosing Properties. If the dll is older than the current build, it was not replaced by the installation process because the dll was held by IIS. In this case, completely uninstall Exchange Service, reboot the machine then try the installation again.

Minimal IIS Lockdown Settings

The IIS Lockdown tool is supplied by Microsoft and allows you to protect your IIS server by denying access to certain HTTP methods, file extensions, and so on. The following IIS Lockdown wizard walkthrough shows the minimum settings needed for the Exchange Service to run:

  1. Select Server Template Screen: Select the template "Other (Server that does not match any of the listed roles)".
  2. Internet Services Screen: Enable only Web service (HTTP) and click remove un-selected services if you wish.
  3. Script Maps Screen: Disable support for all selected script maps.
  4. Additional Security Screen: Remove all selected virtual directories from the server. Set file permissions to prevent anonymous users from performing these actions — include Running system utilities and Writing to Content Directories. Check Disable Web Distributed Authoring and Versioning (WebDAV).
  5. URLScan Screen: Check box that says Install URLScan filter on the server.
  6. urlscan.ini file: With UseAllowVerbs=1 set, the AllowVerbs section only needs to contain the POST verb. With UseAllowExtensions=1 set, the AllowExtensions section only needs to contain the extension .wsdl.

Logging Information

Logging information for the Exchange Service and the Microsoft SOAP Toolkit is sent to the Windows Event Viewer. In the Application Log you will find information about the status of the service (during startup and shutdown), and warnings or errors if something goes wrong. The default Application Log size may be too small for your application. A minimum log size of around 5MB is recommended. In addition, the setting Overwrite as Needed is recommended to insure that no recent events are lost.

If you find that your event logs fill quickly and would like to reduce the amount of information logged, make sure that the AuditEnabled and LogComErrors registry entries are set to 0.

Maintaining Service Uptime

Windows offers you the ability to enable crash recovery for the service so that you do not have to monitor and restart it in the event of a crash. To enable this, go to Control Panel > Administrative Tools > Services > Compoze Exchange Service properties. Under the Recovery tab, set First Failure, Second Failure and Subsequent Failures to Restart the Service. You may wish to set the Restart Service After time to 0 minutes so the service restarts immediately. Now, if a failure occurs, the service will automatically restart. Note that all existing sessions will be lost, forcing users to log back in again.

In addition to enabling the restart of the service in the event of a crash, you can also set the service to automatically terminate at a given interval using the ServiceRestartHours and ServiceRestartMaxSessions registry entries. For more information, see Administration Portlet. As long as the service has been set to restart, Windows will restart the service after it has terminated. When this happens, an error event will be registered in the system log of the event viewer to indicate that the service has terminated and restarted.

Performance Settings

There are very few user adjustable performance settings for the Exchange Service. The thread pool and memory heap in the service itself both grow and shrink as needed. However, the thread pool size in IIS for SOAP can be adjusted manually using the SOFTWARE\Microsoft\MSSOAP\30\SOAPISAP registry entry. By default, it is set to two times the number of CPUs plus one (for example, three for a single CPU machine). You may find that raising this setting in a production environment to three times the number of CPUs plus one gives you improved concurrency in IIS.

Troubleshooting

The following is for troubleshooting issues with the Exchange Service. This service is the Groupware Service Provider for the Microsoft Exchange.

Reporting Crash Errors

If you find that the Exchange Service crashes in your environment and you want to pursue it with support, there are steps that you can take to help us assist you. Please provide as much of the following information as possible in a single zip file when submitting your request:

  1. The error-#.txt and error-#.dmp files in the %COMPOZE_EXCHANGE_SERVICE_HOME%\bin. These files are created when a service crash occurs, and are critical in order to resolve a problem.
  2. The contents of your Application Log in the Event Viewer. This can be obtained by running eventvwr, right-clicking on the Application Log, and choosing Save File As. Save the file in .evt format.
  3. What operation was being performed at the time of the crash, and whose mailbox it occurred in. This may be difficult information to obtain, but if available it does assist in the debugging process, particularly if you are able to force a crash and give us a series of steps to reproduce it.
  4. Version information of each of the service components. In Windows Explorer, right-click each of czex_service.exe, czex_soap.dll, czex_util.dll, and cdo.dll and select the Version tab. This will aid in matching the supplied debug information with the version installed on your system.

In some situations, support may request that you reproduce the problem send a full crash dump (much larger than the mini dump). These are the steps to obtain a full crash dump:

  1. Run drwtsn32 -i from a command prompt. You should see the message "Dr. Watson has been installed as the default debugger".
  2. Run drwtsn32 by itself to configure Dr. Watson. Check the box that says "Dump Symbol Table" and select the number of errors that you wish to save (the defaults are acceptable).
  3. Reproduce the problem and zip up and send the user.dmp and drwtsn32.log files that are created to support.

Reporting Problems With Messages

You may find that a particular message or folder is causing you problems with the Exchange Service. In this case, it is possible to export the original messages for import in order to reproduce the problem. To do this:

  1. Open Outlook 2000 or above to the account with the problem messages.
  2. Choose File > Import and Export.
  3. In the Import and Export Wizard screen, choose Export to a file.
  4. In the Export to a File screen, choose Personal Folder File (.pst).
  5. In the Export Personal Folders screen, choose the folder that you wish to export. It is easiest to export an entire folder (such as the calendar folder), but you may also click the Filter button and restrict what is exported by date range, subject, attendees, created time, and so on. Just make sure that the offending messages get included by the filter you have chosen.

After exporting the PST file, place this in a zip file along with a small readme.txt file that explains the problem with the message(s) and any filter that was used for the export in step 5 in Troubleshooting. Send this zip file to support.

 

Skip navigation bar  Back to Top Previous Next