【问题标题】:Exchange cannot be Autodiscovered from Sharepoint无法从 Sharepoint 自动发现 Exchange
【发布时间】:2011-06-14 23:04:44
【问题描述】:

我创建了一个 ascx 控件,用于通过其 Web 服务访问 Exchange 2010 的 Sharepoint。在它自己的 ASP.NET 测试站点(包装在一个简单的 aspx 页面中)运行时,一切正常。一旦在 Sharepoint 中使用该控件,就会遇到“找不到自动发现服务”错误。

ascx 控件的 dll 背后的代码已被放入 GAC 以及 Microsoft.Exchange.WebServices.dll

Microsoft.Exchange.WebServices.dll 也已添加到共享点站点的 web.config 中的安全控制列表中:

<SafeControl Assembly="Microsoft.Exchange.WebServices, Version=14.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" Namespace="Microsoft.Exchange.WebServices" TypeName="*" Safe="True" />

我可以 ping 自动发现服务并从 Sharepoint 服务器访问 Exchange Web 服务 URL https://mydomain.com/EWS/Services.wsdl

用户名和密码正在ascx代码后面的服务中发送:

Dim service As ExchangeService = New ExchangeService()
service.Credentials = New WebCredentials(usrExchange, pwdExchange)
service.ImpersonatedUserId = New ImpersonatedUserId(ConnectingIdType.SmtpAddress, email)

有趣的是,如果我将 url https://mydomain.com/EWS/Exchange.asmx 指定给服务,我会收到 405 Method not allowed 错误。

有人知道问题可能是什么吗?

干杯, 加文

【问题讨论】:

  • 干杯 Pradeep 会做。不知道那个! :)
  • 有趣的是,这在开发盒中可以正常工作,只是实时盒会导致 405 错误。我可以使用网络浏览器从两个框中访问mydomain.com/EWS/Services.wsdl,没有任何问题。

标签: asp.net sharepoint-2007 exchange-server autodiscovery


【解决方案1】:

我遇到了同样的问题,我想我已经找到了解决方案。我必须在“管理信任”下将交换服务器使用的域根证书添加到 SharePoint。

在那之后,一切都像魅力一样!

【讨论】:

    【解决方案2】:

    ascx 控件可以作为运行 SharePoint 的帐户执行 Web 服务调用。该帐户可能无法访问 Exchange 网络服务。

    【讨论】:

    • 后面代码中对服务的调用设置了特定的用户名和密码 - 为原始问题添加了额外的细节以显示这一点。不过谢谢:)
    • 是的,我会在评论中把它扔掉,但当时没有足够的访问权限。
    猜你喜欢
    • 2012-04-23
    • 2012-08-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-25
    • 1970-01-01
    相关资源
    最近更新 更多