标签: ewsjavaapi

无法找到自动发现服务

我使用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());
Run Code Online (Sandbox Code Playgroud)

我收到以下异常:

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 …
Run Code Online (Sandbox Code Playgroud)

java exchange-server exchangewebservices ewsjavaapi

5
推荐指数
1
解决办法
6548
查看次数

使用commons-httpclient和EWSJavaAPI获取nullPointerException

我正在使用EWS Java API 1.1.5 ,我试图将服务绑定到收件箱文件夹,如下所示:

ExchangeService service = new ExchangeService();
        ExchangeCredentials credentials = new WebCredentials(email, password);
        service.setCredentials(credentials);
        service.setUrl(new java.net.URI("https://" + host
                + "/EWS/Exchange.asmx"));
Folder inbox = Folder.bind(service, WellKnownFolderName.Inbox);
Run Code Online (Sandbox Code Playgroud)

我从jsp页面调用上面的代码.

但我得到NullPointerException:

java.lang.NullPointerException
    at org.apache.commons.httpclient.HttpMethodBase.getStatusCode(HttpMethodBase.java:570)
    at microsoft.exchange.webservices.data.HttpClientWebRequest.getResponseCode(Unknown Source)
    at microsoft.exchange.webservices.data.ServiceRequestBase.validateAndEmitRequest(Unknown Source)
    at microsoft.exchange.webservices.data.SimpleServiceRequestBase.internalExecute(Unknown Source)
    at microsoft.exchange.webservices.data.MultiResponseServiceRequest.execute(Unknown Source)
    at microsoft.exchange.webservices.data.ExchangeService.bindToFolder(Unknown Source)
    at microsoft.exchange.webservices.data.ExchangeService.bindToFolder(Unknown Source)
    at microsoft.exchange.webservices.data.Folder.bind(Unknown Source)
    at microsoft.exchange.webservices.data.Folder.bind(Unknown Source)
    at com.xeno.phonesuite.web.Mail.Mail.readInbox(Mail.java:49)
    at org.apache.jsp.mail.inbox_jsp._jspService(inbox_jsp.java:79)
    at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) …
Run Code Online (Sandbox Code Playgroud)

web-services jtapi exchangewebservices ewsjavaapi cisco-jtapi

5
推荐指数
1
解决办法
1835
查看次数

如何在Java中使用LDAP身份验证进行Exchange Web服务连接?

我尝试编写一个访问Exchange Web服务的Java应用程序,以便阅读电子邮件.因此,我使用EWSMicrosoft提供的Exchange Web Services()Java API.

我已经遇到了几个问题,我终于发现应该使用LDAP完成身份验证.不幸的是,我不知道怎么做这样的事情.EWS API是否允许配置连接到Exchange服务器时要使用的身份验证方案?如果是,如何配置?

这是我用于连接的代码,但它使用默认的身份验证方案,即NTLM:

String url = "https//my-server/EWS/exchange.asmx";
ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2007_SP1);
service.setTraceEnabled(true);
service.setCredentials(new WebCredentials("user", "password"));
service.setUrl(url.toURI());

Mailbox mailbox = new Mailbox("foo@bar.com");
FolderId folder = new FolderId(WellKnownFolderName.Inbox, mailbox);
ItemView view = new ItemView(10);
view.getOrderBy().add(ItemSchema.DateTimeReceived, SortDirection.Descending);
FindItemsResults<Item> items = service.findItems(folder, view);
Run Code Online (Sandbox Code Playgroud)

java ldap exchangewebservices ewsjavaapi

5
推荐指数
1
解决办法
4777
查看次数

EWSJavaAPI_1.2.jar的Maven Ropository

我在一个项目上工作,我使用EWS Java Api连接到MS Exchange Server.
要解决我的依赖关系,我使用Maven.

我的问题是我必须连接到需要EWSJavaAPI_1.2.jar的Exchange Server 2010 SP2,但我只找到了一个存储库(http://maven-repository.com/artifact/com.microsoft.ewsjavaapi/exchange-ws -api)包含此EWS Java API.

问题是此存储库没有正确的版本.

最新版本可以在这里下载:http://archive.msdn.microsoft.com/ewsjavaapi/Release/ProjectReleases.aspx?ReleaseId = 5754

但我想通过Maven添加这种依赖.

你能给我一个包含正确版本的存储库吗?

提前致谢.

java repository exchangewebservices maven ewsjavaapi

5
推荐指数
2
解决办法
7690
查看次数

如何使用Java EWS API搜索iCalUid的Exchange约会?

我正在使用Java EWS库来搜索用户日历中的约会iCalUid(例如iCalUid我有:) 040000008200E00074C5B7101A82E00800000000F66E2C0D59A9D001000000000000000010000000F7A6AACB779B00429164F39AE6DD6BB9.这是我的Scala代码:

import microsoft.exchange.webservices.data._

import java.net.URI
import java.util.Date

val exchange = {
  val service = new ExchangeService(ExchangeVersion.Exchange2010_SP2)
  service.setUrl(new URI(host))
  service.setCredentials(new WebCredentials(user, pass))
  service
}

def calendarFolderFor(email: String) = new FolderId(WellKnownFolderName.Calendar, Mailbox.getMailboxFromString(email))

def findMatchingAppointments(iCalUid: String, email: String) = {
  val searchFilter = new SearchFilter.IsEqualTo(AppointmentSchema.ICalUid, iCalUid)
  exchange.findItems(calendarFolderFor(email), searchFilter, new ItemView(1)).getItems
}
Run Code Online (Sandbox Code Playgroud)

上面的代码抛出了这个错误:

microsoft.exchange.webservices.data.ServiceResponseException: The property can not be used with this type of restriction.
  at microsoft.exchange.webservices.data.ServiceResponse.internalThrowIfNecessary(ServiceResponse.java:262) ~[ews-java-api-1.3-SNAPSHOT.jar:na]
  at microsoft.exchange.webservices.data.ServiceResponse.throwIfNecessary(ServiceResponse.java:251) ~[ews-java-api-1.3-SNAPSHOT.jar:na]
  at microsoft.exchange.webservices.data.MultiResponseServiceRequest.execute(MultiResponseServiceRequest.java:146) ~[ews-java-api-1.3-SNAPSHOT.jar:na]
  at …
Run Code Online (Sandbox Code Playgroud)

java scala exchangewebservices exchange-server-2010 ewsjavaapi

4
推荐指数
1
解决办法
1776
查看次数

Exchange Web服务通过“ Message-ID”标头找到EmailMessage

我正在使用Java EWS库,并尝试回复一些消息。主要问题是-如果我只知道邮件的“ Message-ID”标头的值,如何在文件夹或邮箱中找到EmailMessage。

我尝试做这样的事情:

ExtendedPropertyDefinition p = new ExtendedPropertyDefinition(DefaultExtendedPropertySet.InternetHeaders, "Message-ID", MapiPropertyType.String)

myfolder.findItems(new SearchFilter.IsEqualTo(p, "<1031208507.471.1446200157453.JavaMail.test>"), new ItemView(1))
Run Code Online (Sandbox Code Playgroud)

但是结果集是空的!你能帮助我吗?一些Java或C#解决方案?

c# java exchangewebservices ewsjavaapi

3
推荐指数
1
解决办法
1179
查看次数

如何使用Java API在Exchange Server中获取DL?

如何通过Java中的EWS从Microsoft Exchange Server获取DL(分发列表)?

我已经尝试过EWS Java API但找不到Distribution List交换服务器的(GAL)列表,任何有关此API或任何其他API的帮助都将不胜感激.

java soap exchange-server exchangewebservices ewsjavaapi

2
推荐指数
1
解决办法
1714
查看次数

EWS 获取具有指定主题行的邮件

如何指定SearchFilterJava EWS 库来获取包含已定义主题行的邮件?

提前致谢。

java exchangewebservices ewsjavaapi

1
推荐指数
1
解决办法
2332
查看次数

Exchange Web 服务当前不可用于此请求,因为目标站点中的任何客户端访问服务器都无法处理

我正在使用 EWS Java API 并传递 OAuth 令牌以从 Office 365 邮箱获取数据。

因为我正在开发 Web API,所以我更喜欢使用在 Office 365 的 Azure 活动目录应用程序中定义的“应用程序权限”,并使用“客户端凭据流”OAuth 流来获取特定于应用程序的 OAuth 令牌,这将允许“通过 EWS 对所有组织中的邮箱”。

使用文档“ http://blogs.msdn.com/b/exchangedev/archive/2015/01/21/building-demon-or-service-apps-with-office-365-mail 中指定的程序获取令牌后-calendar-and-contacts-apis-oauth2-client-credential-flow.aspx

我将此令牌传递给 EWS Java API,

它给了我错误说:

microsoft.exchange.webservices.data.ServiceResponseException:Exchange Web 服务当前不可用于此请求,因为目标站点中的任何客户端访问服务器都无法处理该请求。

我用 EWS 托管的 .net API 尝试了类似的事情。得到类似的错误。

任何人都可以提供一些帮助和指导来解决此错误。

谢谢和最好的问候,

普兰加尔

azure exchangewebservices azure-acs ewsjavaapi

1
推荐指数
1
解决办法
4891
查看次数