【发布时间】:2012-12-21 16:27:13
【问题描述】:
我们有一个 ASP.Net 网站,它连接到外部 Web 服务,几天前它突然停止工作。
基本代码是这样的:
Try
request = New ExternalWebService.ProcessRequestService
' Error occurs here:
response = request.processCommand(parameters)
' Do some other stuff with response here
Catch webEx As System.Net.WebException
' This triggers and generic error gets displayed
Catch ex As Exception
Finally
End Try
System.Net.WebException 被 SendFailure 异常触发,并返回此堆栈跟踪:
当我尝试在我的开发机器上调试这个问题时,它工作正常并且没有发生异常。
我们的网络服务器最近没有更新,我可以使用 FireFox 从网络服务器连接到 wsdl 服务(但是我无法连接到 IE,但这可能与我们在网络上使用 IE 时遇到的另一个问题有关服务器)
我已经尝试了针对错误消息 #2 here 发布的所有解决方案,包括设置 KeepAlive = False 和 ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3,但都没有解决问题。
我们的网络服务器运行的是 Windows Server 2003 和 IIS6.0
什么会导致此错误发生在一台机器上,而不是另一台机器上?
编辑:这是跟踪信息:
System.Web.Services.Asmx 信息:0:调用 XmlSerializer [创建 XmlSerializer] 方法:System.Xml.Serialization.XmlSerializer#1669721556::FromMappings(System.Xml.Serialization.XmlMapping[]#4002219=[4], ExternalWebService.ProcessRequestService#93032588=ExternalWebService.ProcessRequestService) 调用者:System.Web.Services.Protocols.SoapClientType#42808772::.ctor(ExternalWebService.ProcessRequestService#93032588=ExternalWebService.ProcessRequestService) 进程 ID=2796 逻辑操作栈= 线程 ID=14 日期时间=2012-12-21T17:02:39.2826250Z 时间戳=61755143048799345 System.Web.Services.Asmx 信息:0:从 XmlSerializer 返回 [创建 XmlSerializer] 调用者:System.Web.Services.Protocols.SoapClientType#42808772::.ctor(ExternalWebService.ProcessRequestService#93032588=ExternalWebService.ProcessRequestService) 进程 ID=2796 逻辑操作栈= 线程 ID=14 日期时间=2012-12-21T17:02:39.6576250Z 时间戳=61755144323396760 System.Web.Services.Asmx 信息:0:调用 XmlSerializer [写入请求] 方法:Microsoft.Xml.Serialization.GeneratedAssembly.ArrayOfObjectSerializer#1231684::Serialize(System.Xml.XmlTextWriter#8023888=.., System.Object[]#19695157=[40], (null), (null)) 调用者:ExternalWebService.ProcessRequestService#60553900::Serialize() 进程 ID=2796 逻辑操作栈= 线程 ID=14 日期时间=2012-12-21T17:02:39.7357500Z 时间戳=61755144598320131 System.Web.Services.Asmx 信息:0:从 XmlSerializer 返回 [Write Request] 调用者:ExternalWebService.ProcessRequestService#60553900::Serialize() 进程 ID=2796 逻辑操作栈= 线程 ID=14 日期时间=2012-12-21T17:02:39.7357500Z 时间戳=61755144621621529 System.Web.Services.Asmx 信息:0:调用 WebRequest.GetResponse 方法:System.Net.HttpWebRequest#2800407::GetResponse() 调用方:ExternalWebService.ProcessRequestService#60553900::GetWebResponse() 进程 ID=2796 逻辑操作栈= 线程 ID=14 日期时间=2012-12-21T17:02:39.7357500Z 时间戳=61755144622114240【问题讨论】:
-
跟踪日志中显示了什么?
-
@BradChristie 我在哪里可以找到跟踪日志? (抱歉,Web 开发并不是我的专长)
-
外部 Web 服务是否需要 SSL?
-
@Blachshma 是的,它是一个 https 网络服务
标签: asp.net vb.net web-services