我在Farm A上部署了一个自定义SharePoint Web服务。我正在尝试从Farm B上的SharePoint计时器作业访问此Web服务。在Farm B上,我正在创建类库项目,打包它(wsp)然后部署到GAC。问题是我无法使用以下代码访问Web服务。 TodaysNewSVC
是服务参考
TodaysNewSVC.GetTodaysnewsfromInsite objGetNews = new TodaysNewSVC.GetTodaysnewsfromInsite();
objGetNews.PreAuthenticate = true;
objGetNews.Credentials = CredentialCache.DefaultCredentials;
objGetNews.Url = "http://insite-dev.portal/_vti_bin/todaysnews.asmx";
DataTable dt2 = objGetNews.getNewsFromInsite(true, true);
//getNewsFromInsite is a WebMethod which returns the DataTable.
注意:两个服务器场都使用相同的活动目录身份验证。我还完成了Timer Job和功能激活的调试,它们工作正常。呼叫期间会出现问题,即getNewsFromInsite
可以从Internet Explorer以及Windows控制台应用程序访问asmx和wsdl文件。这是我在控制台应用程序中使用的代码:
GetTodaysnewsfromInsiteSoapClient objWSClient = new GetTodaysnewsfromInsiteSoapClient();
objWSClient.ClientCredentials.Windows.ClientCredential = System.Net.CredentialCache.DefaultNetworkCredentials;
objWSClient.ClientCredentials.Windows.AllowedImpersonationLevel = System.Security.Principal.TokenImpersonationLevel.Impersonation;
DataTable dt = objWSClient.getNewsFromInsite(true, true);
以下是错误消息:
The request failed with the error message:
--
<html><head><title>Object moved</title></head><body>
<h2>Object moved to <a href="%2fPages%2fproblem-with-page.aspx%3fc%3d500">here</a>.</h2>
</body></html>
答案 0 :(得分:1)
什么是problem-with-page.aspx
?是登录还是自定义错误页面?
如果是其登录页面,则您的身份验证失败。我怀疑它的登录页面是否因为您提到了Active Directory身份验证。
如果是自定义错误页面,则目标代码抛出异常。您是否可以介入目标代码?