5

我正在使用 EWS Java API 1.1 访问 Exchange 2010 帐户,如下所示:

ExchangeService service = new ExchangeService();
ExchangeCredentials credentials = new WebCredentials(email,
    password);
service.setCredentials(credentials);
service.autodiscoverUrl("adamb@fabrikam.com");
Folder inbox = Folder.bind(service, WellKnownFolderName.Inbox);
System.out.println("messages: " + inbox.getTotalCount());

我收到以下异常:

08/10/2012 05:11:35 م org.apache.commons.httpclient.HttpMethodDirector executeWithRetry
INFO: I/O exception (java.net.ConnectException) caught when processing request: Connection timed out: connect
08/10/2012 05:11:35 م org.apache.commons.httpclient.HttpMethodDirector executeWithRetry
INFO: Retrying request
08/10/2012 05:11:56 م org.apache.commons.httpclient.HttpMethodDirector executeWithRetry
INFO: I/O exception (java.net.ConnectException) caught when processing request: Connection timed out: connect
08/10/2012 05:11:56 م org.apache.commons.httpclient.HttpMethodDirector executeWithRetry
INFO: Retrying request
08/10/2012 05:12:17 م org.apache.commons.httpclient.HttpMethodDirector executeWithRetry
INFO: I/O exception (java.net.ConnectException) caught when processing request: Connection timed out: connect
08/10/2012 05:12:17 م org.apache.commons.httpclient.HttpMethodDirector executeWithRetry
INFO: Retrying request
microsoft.exchange.webservices.data.AutodiscoverLocalException: The Autodiscover service couldn't be located.
    at microsoft.exchange.webservices.data.AutodiscoverService.internalGetLegacyUserSettings(Unknown Source)
    at microsoft.exchange.webservices.data.AutodiscoverService.getLegacyUserSettings(Unknown Source)
    at microsoft.exchange.webservices.data.AutodiscoverService.internalGetLegacyUserSettings(Unknown Source)
    at microsoft.exchange.webservices.data.AutodiscoverService.getUserSettings(Unknown Source)
    at microsoft.exchange.webservices.data.ExchangeService.getAutodiscoverUrl(Unknown Source)
    at microsoft.exchange.webservices.data.ExchangeService.autodiscoverUrl(Unknown Source)
    at microsoft.exchange.webservices.data.ExchangeService.autodiscoverUrl(Unknown Source)
    at main.java.TestMail.main(TestMail.java:22)
4

1 回答 1

6

删除自动发现后它工作正常:

service.autodiscoverUrl("adamb@fabrikam.com");

并手动设置如下:

service.setUrl(new java.net.URI(
                    "https://myhostname/EWS/Exchange.asmx"));
于 2012-10-09T11:06:00.210 回答