sifu128 -> RE: Exchange 2007 Offline Address Book (25.Nov.2006 10:29:03 PM)
Ok, here is the deal. Right now you can only use OABInteg if you have a public folder information store that is going to host the OAB Version 2, 3 and 4. OAB Version 4 will also be generated and saved to the local distribution point if you server is an everything server or set up for Web Distribution. Being that MAPI is not installed on the box you will either need to install Outlook or the standalone CDO/MAPI install.
I have not completed the code for Exchange 2007 yet. If you are building an OAB Version 4 you can follow this blog to make sure that it is being generated successful.
How to work with Exchange 2007 OAB Event Logging - http://blogs.msdn.com/dgoldman/archive/2006/08/26/725860.aspx.
If the OAB is being generated succesfully a DS notification event should be sent to the client access server. This DS notification event will wake up the FDS (File Distribution Service) to copy the files over from the mailbox server to the client access server. By default files are copied over to the CAS every 8 hours, or unless we get an DS notification event. For more information you can read this blog:
How Exchange 2007 OAB Files are replicated to a Client Access Server for download here.
So what you need to do is open the application log and look for the event id 1008 which is the event that shows the FDS replication:
Event Type: Information
Event Source: MSExchangeFDS
Event Category: FileReplication
Event ID: 1008
Time: 7:48:31 PM
Description: Process MSExchangeFDS.exe (PID=2188). Offline Address Book data synchronization task has completed successfully. OAB name: "Default Offline Address Book", Guid: edb3e44f-c49b-4597-b996-cb1093405985
For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.
Once the files are copied to the client access server they should reside in this directory: C:\Program Files\Microsoft\Exchange Server\ClientAccess\OAB\<GUID of the OAB>
If these files have not been replicated over you will not be able to download them.
In addition to this it is very possible that your OAB is not set up for web distribution and or Autodiscover has not picked up the OAB Url which should be listed under the <EXCH> section of the autodiscover.xml file that is downloaded.
You can hold down the control key and right client on the Outlook icon on your system tray to bring up the aditional options for outlook. You can then select the Test Email AutoConfiguration. Uncheck Use GuestSmart and Secure GuestSmart Authentication.
In the results pane you should see an OAB URL. In the xml section you need to look for the following:
<ServerDN>/o=forthcoffee/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Configuration/cn=Servers/cn=oabserver</ServerDN>
<MdbDN>/o=forthcoffee/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Configuration/cn=Servers/cn=oabserver/cn=Microsoft Private MDB</MdbDN>
You can also use your web browser to connect to the CAS server by http:\\machine\autodiscover\autodiscover.xml and you will be prompted for credentials. Once you put your credentials in you will get a 600 error and this is ok as you are connecting to the autodiscover service just fine:
<?xml version="1.0" encoding="utf-8" ?>
- <Autodiscover xmlns="http://schemas.microsoft.com/exchange/autodiscover/responseschema/2006">
- <Response xmlns="http://schemas.microsoft.com/exchange/autodiscover/responseschema/2006">
- <Error Time="19:54:26.7187500" Id="1632803466">
<DebugData /> </Error> </Response> </Autodiscover>
The reason why you get the 600 error is that you are not sending a proper http/get request with the schema data that is needed.
So in short, make sure that the OAB has been generated ok, the files are in the proper locations and your client is getting an OAB url, you can check this from the Outlook icon.
For more OAB information you can see my blog site: http://blogs.msdn.com/dgoldman