我正在尝试编写一个小型Java客户端,以消费Microsoft Exchange服务器通过Exchange Web服务(EWS)提供的服务。为了进行试验,我从here设置了Exchange Online帐户。
然后我将Outlook客户端配置为使用交换时新创建的邮件和Outlook的测试电子邮件自动配置窗口我试图检索该客户端的Services.wsdl链接:
然后我尝试点击可用性服务网址,输入用户名和密码,然后打开以下页面:
然后我尝试点击该页面上为service.wsdl指定的url,但它给出了Page Not Found错误。那么
答案 0 :(得分:8)
Q1 - 可以从您希望访问的Exchange服务器端点下载WSDL文件。我没有凭据来尝试这个,但这应该有效:
https://outlook.office365.com/EWS/Services.wsdl
它通常位于EWS目录中,名为Services.wsdl。我只是查看了上面的其他截图并推断出相同的格式。
Q2 - 对于Office 365(您正在测试),Microsoft建议this approach手动查找要为API调用命中的URL。 (在这里替代更详细的解释:How to get services.wsdl for Office 365?)
然而,如果您使用预先构建的Java库(如Microsoft自己的{{3}),那么您自己构建存根并找到要调用的URL是您不必须做的大量工作。或者EWS Java API。它们基本上都做同样的事情,即在Jar中公开Java类,允许您调用任何Exchange服务器。如果您愿意,他们还会自动发现要使用的URL(这是一个名为3rd party library的功能)。