Reputation: 731
The hosting company that my employer uses upgraded to Exchange 2010 over the weekend. This caused a service we use that access a mailbox to break. The hosting company said our mailboxes were still 2007. When trying to access them now using the Exchange 2007 Webservice, I get the following error:
The Client Access server version doesn't match the Mailbox server version of the resource that was being accessed. To determine the correct URL to use to access the resource, use Autodiscover with the address of the resource.
I have done some Googling on this error, and have found some posts about using AutoDiscover to get around this. I tried the Microsoft Example I found here, but I am unclear as to what the output from the console is telling me or how I use it.
It looks like it tries hitting some URLs and then reports on what it found. I either have Exceptions, "The e-mail address cannot be found", or "Site mismatch"
Edit: I got the sample application to return some information. Now my question is, how do I translate what this output is into accessing the mailbox I need?
Here is a list of properties that is returned with their actual values omitted.
=? Trying '[email protected]' at 'https://myDomain.net/Autodiscover/Autodiscover.xml'
User/DisplayName=
User/LegacyDN=
User/DeploymentId=
Account/AccountType=
Account/Action=
Account/Protocol/Type=
Account/Protocol/ASUrl=
Account/Protocol/DirectoryPort=
Account/Protocol/MdbDN=
Account/Protocol/OABUrl=
Account/Protocol/OOFUrl=
Account/Protocol/Port=
Account/Protocol/ReferralPort=
Account/Protocol/Server=
Account/Protocol/ServerDN=
Account/Protocol/ServerVersion=
Account/Protocol/UMUrl=
Account/Protocol/PublicFolderServer=
Account/Protocol/AD=
Account/Protocol/EwsUrl=
Account/Protocol/Type=
Account/Protocol/AuthPackage=
Account/Protocol/CertPincipalName=
Account/Protocol/DirectoryPort=
Account/Protocol/OABUrl=
Account/Protocol/Port=
Account/Protocol/ReferralPort=
Account/Protocol/Server=
Account/Protocol/SSL=
Account/Protocol/Type=
Account/Protocol/DirectoryPort=
Account/Protocol/Port=
Account/Protocol/ReferralPort=
Account/Protocol/External/OWAUrl[@AuthenticationMethod="Fba"]=
Account/Protocol/External/OWAUrl[@AuthenticationMethod="Fba"]=
Account/Protocol/Internal/OWAUrl[@AuthenticationMethod="Basic, Fba"]=
Account/Protocol/Internal/OWAUrl[@AuthenticationMethod="Basic, Fba"]=
Account/Protocol/Internal/OWAUrl[@AuthenticationMethod="Basic, Fba"]=
Account/Protocol/Internal/Protocol/Type=
Account/Protocol/Internal/Protocol/ASUrl=
Can someone point me in the right direction toward solving this problem?
Also, I do not have access to make any changes on the Exchange Server itself.
Upvotes: 1
Views: 3490
Reputation: 15981
I had the same error:
The Client Access server version doesn't match the Mailbox server version of the resource that was being accessed
..but the EwsUrl was correct
The server platform had been upgraded to 2013, but the target mailbox was still in 2007 mode. The fix was to migrate the mailbox to 2013 and it started working again. So it was an environmental rather than code fix.
Upvotes: 0
Reputation: 731
I found the answer with a bit more of googling. The URL being returned from the "Account/Protocol/EwsUrl=" property gave me the value I wanted to point my webservice at.
Upvotes: 1