Hi,
The test environment:
Parent domain: parent.domain.
Child domain: child.parent.domain
SMTP domain: smtp.domain
SIP domain: sip.domain
Test PC join the "child.parent.domain" and login with "child\test1", this account's email address is "test1@sip.domain", outlook in this PC works fine, but EWS raise a exception about getting user settings.
EWS auto-discover code:
AutoDiscoverExchangeWebServices
{
...
_ExchangeService = new ExchangeService(ExchangeVersion.Exchange2007_SP1);
_ExchangeService.TraceEnabled = true;
_ExchangeService.AutodiscoverUrl("test1@sip.domain", AutoDiscoverValidationCallback);
...
}
Logs:
=====================AutodiscoverConfiguration========================<Trace Tag="AutodiscoverConfiguration" Tid="34" Time="2012-04-26 10:04:10Z">
Starting SCP lookup for domainName='sip.domain', root path='
</Trace>
=====================AutodiscoverConfiguration========================
<Trace Tag="AutodiscoverConfiguration" Tid="34" Time="2012-04-26 10:04:10Z">
Searching for SCP entries in LDAP://CN=Configuration,DC=parent,DC=domain
</Trace>
=====================AutodiscoverConfiguration========================
<Trace Tag="AutodiscoverConfiguration" Tid="34" Time="2012-04-26 10:04:10Z">
Scanning for SCP pointers Domain=sip.domain
</Trace>
=====================AutodiscoverConfiguration========================
<Trace Tag="AutodiscoverConfiguration" Tid="34" Time="2012-04-26 10:04:10Z">
No SCP pointers found for 'Domain=sip.domain' in configPath='CN=Configuration,DC=parent,DC=domain'
</Trace>
=====================AutodiscoverConfiguration========================
<Trace Tag="AutodiscoverConfiguration" Tid="34" Time="2012-04-26 10:04:10Z">
Scanning for SCP urls for the current computer Site=TEST
</Trace>
=====================AutodiscoverConfiguration========================
<Trace Tag="AutodiscoverConfiguration" Tid="34" Time="2012-04-26 10:04:10Z">
Adding (prio 1) 'https://webmail.domain/autodiscover/autodiscover.xml' for the 'Site=TEST' from 'LDAP://CN=FRSTM11MM1,CN=Autodiscover,CN=Protocols,CN=FRSTM11MM1,CN=Servers,CN=Exchange Administrative Group (FYDIBOHF23SPDLT),CN=Administrative Groups,CN=Test Systems,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=parent,DC=domain' to the top of the list (exact match)
</Trace>
Message: System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
at System.Collections.ArrayList.get_Item(Int32 index)
at System.DirectoryServices.ResultPropertyValueCollection.get_Item(Int32 index)
at Microsoft.Exchange.WebServices.Autodiscover.DirectoryHelper.GetScpUrlList(String domainName, String ldapPath, Int32& maxHops)
at Microsoft.Exchange.WebServices.Autodiscover.DirectoryHelper.GetAutodiscoverScpUrlsForDomain(String domainName)
at Microsoft.Exchange.WebServices.Autodiscover.AutodiscoverService.GetAutodiscoverServiceUrls(String domainName, Int32& scpHostCount)
at Microsoft.Exchange.WebServices.Autodiscover.AutodiscoverService.InternalGetLegacyUserSettings[TSettings](String emailAddress, List`1 redirectionEmailAddresses, Int32& currentHop)
at Microsoft.Exchange.WebServices.Autodiscover.AutodiscoverService.GetLegacyUserSettings[TSettings](String emailAddress)
at Microsoft.Exchange.WebServices.Autodiscover.AutodiscoverService.InternalGetLegacyUserSettings(String emailAddress, List`1 requestedSettings)
at Microsoft.Exchange.WebServices.Autodiscover.AutodiscoverService.GetUserSettings(String userSmtpAddress, UserSettingName[] userSettingNames)
at Microsoft.Exchange.WebServices.Data.ExchangeService.GetAutodiscoverUrl(String emailAddress, ExchangeVersion requestedServerVersion, AutodiscoverRedirectionUrlValidationCallback validateRedirectionUrlCallback)
at Microsoft.Exchange.WebServices.Data.ExchangeService.AutodiscoverUrl(String emailAddress, AutodiscoverRedirectionUrlValidationCallback validateRedirectionUrlCallback)
at SelfExchangeService.AutoDiscoverExchangeWebServices(String emailaddr) -- Priority: 0 --Severity: Critical--ProcessId: 2688--Win32 ThreadId:3360
This looks like some error in server configuration. How is exception raised? Where to check the configurations?
Thanks very much.