我的Windows 2003服务器上运行了一个XML Web服务。我有一台运行在同一台机器上的Windows服务。我想从Windows服务中调用XML Web服务。
这在我的运行Windows XP的开发机器上工作正常。但是,当我尝试在我的Windows Server 2003框中执行此操作时,它会超时并引发异常。我的Windows服务捕获异常并将其写入事件日志。这是错误在事件日志中显示的方式:
无法找到源(myWS)中事件ID(0)的说明。本地计算机可能没有必要的注册表信息或消息DLL文件来显示来自远程计算机的消息。您可以使用/ AUXSOURCE =标志来检索此描述;请参阅帮助和支持以获取详细信以下信息是活动的一部分: MyWS服务中的例外情况:[System.Net.WebException:无法连接到远程服务器---> System.Net.Sockets.SocketException:连接尝试失败,因为连接方在一段时间后没有正确响应,或者建立的连接失败,因为连接的主机无法响应[我的IP地址在这里] 在System.Net.Sockets.Socket.DoConnect(EndPoint endPointSnapshot,SocketAddress socketAddress) 在System.Net.Sockets.Socket.InternalConnect(EndPoint remoteEP) at System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure,Socket s4,Socket s6,Socket& socket,IPAddress& address,ConnectSocketState state,IAsyncResult asyncResult,Int32 timeout,Exception& exception) ---内部异常堆栈跟踪结束--- 在System.Net.HttpWebRequest.GetRequestStream() 在System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName,Object []参数) 在C:\ Projects \ Odyl \ OdylUtilities \ MyWS \ TesterClient.cs中的TesterClient.Test():第30行 位于C:\ Projects \ Odyl \ OdylUtilities \ MyWS \ MyWSWindowsService.cs中的MyWS.MyWSWindowsService.DoMyWSService():第81行 at MyWS.MyWSWindowsService.StartService()in C:\ Projects \ Odyl \ OdylUtilities \ MyWS \ MyWSWindowsService.cs:第45行。
正如您所看到的,写入事件日志(所有AUXSOURCE的东西)都存在一些问题,但主要问题是它从Web服务收到超时错误。
这是真正奇怪的事情 - 从我的开发盒(运行XP),我可以调用在我的Windows 2003 Server盒子上运行的Web服务。这真的很令人困惑 - 显然Web服务工作正常,但出于某种原因,Windows Server 2003不允许您从同一台机器调用Web服务!
任何人都可以给我一个关于发生了什么的提示吗?
答案 0 :(得分:0)
这听起来像是与Win2K3服务器相关的网络问题。网络配置阻止它访问给定位置的服务URL。
解决此问题的最简单方法:RDP到Win2K3服务器桌面并打开Web浏览器以连接到Web服务。我希望你能超时。
最简单的解决方法:如果有本地服务的URL,即localhost,请尝试从您的服务中获取。否则,请准备好让您的网络管理员参与,以了解支持您要用于服务的URL路径所需的DNS设置。