2011-01-25 2 views
0

SharePoint 서비스를 통해 Exchange 2010에 액세스하는 Sharepoint에서 사용할 ascx 컨트롤을 만들었습니다. 그것에서 실행할 때 (간단한 aspx 페이지에서 감싸 인) 그것의 자신의 ASP.NET 시험 위치는 전부 잘 작동한다. 셰어 포인트 내에서 컨트롤을 사용하면 "Autodiscover 서비스를 찾을 수 없습니다"오류가 발생합니다.Sharepoint에서 Exchange를 자동 검색 할 수 없습니다.

ASCX 제어를위한 DLL 뒤에 코드는 GAC에 떨어 된도 Microsoft.Exchange.WebServices.dll

Microsoft.Exchange.WebServices.dll은 웹에서 안전 제어 목록에 추가되었습니다 SharePoint 사이트에 대한의 .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 웹 서비스 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 방법이 아니다 허용 오류가 발생합니다.

누구든지 어떤 아이디어가있을 수 있습니까?

건배, 개빈

+0

환호성 Pradeep이 (가) 도움을줍니다. 그 하나에 대해 몰랐어요! :) – Gavin

+0

흥미롭게도이 장치는 dev 상자에서 제대로 작동하지만 405 오류가 발생하는 라이브 상자 일뿐입니다. 웹 브라우저를 사용하여 두 상자 모두 https://mydomain.com/EWS/Services.wsdl에 액세스 할 수 있습니다. – Gavin

답변

0

ASCX 컨트롤에서 SharePoint를 실행하는 계정으로 웹 서비스 호출을 실행 할 수있다. 해당 계정은 Exchange 웹 서비스에 액세스 할 수 없습니다.

+0

코드 숨김 서비스 호출은 특정 사용자 이름과 암호를 설정합니다. 원래 질문에 자세한 내용을 추가하여이를 보여줍니다. 고마워. :) – Gavin

+0

그래, 나는 그 의견에 던져 버렸지 만 당시에 그렇게 하기엔 충분하지 않았다. –

1

동일한 문제가 발생하여 솔루션을 찾은 것 같습니다. Exchange Server에서 "신뢰 관리"아래에있는 SharePoint에 사용 된 도메인 루트 인증서를 추가해야했습니다.

그 모든 것이 매력처럼 작동 한 후!

관련 문제