Soap Exception消息从同一个asmx服务的两个不同服务器返回两个不同的错误消息

时间:2012-11-27 22:24:15

标签: .net service asmx

我们有一个ASMX服务,并且在两个不同的服务器中部署了相同的代码,但是当一个服务器中发生异常或错误时,两个服务器返回的异常消息都不同。特别是故障字符串不同。下面是示例两个服务器发生错误时返回的消息

来自第一台服务器的消息

The remote server returned an error: (500) Internal Server Error.
SOAP Response: 

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <soap:Body>
    <soap:Fault>
      <faultcode>soap:Client</faultcode>
      <faultstring>Fault occurred</faultstring>
      <faultactor>http://bbbonline.consumerservice/service.asmx?op=FileComplaint</faultactor>
      <detail>ErrorOccured at so and so..</detail>
    </soap:Fault>
  </soap:Body>
</soap:Envelope>

来自第二台服务器的消息

The remote server returned an error: (500) Internal Server Error.
SOAP Response: 
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <soap:Body>
    <soap:Fault>
      <faultcode>soap:Client</faultcode>
      <faultstring>
        System.Web.Services.Protocols.SoapException: Fault occurred
        at BBBOnline.Application.MyService.MySoapException(XmlNode ErrorNode)
        at BBBOnline.Application.MyService.FileAComplaint(String SSN, String Buisness, String Issue, String Reason, String date)
      </faultstring>
      <faultactor>http://bbbonline.consumerservices/service.asmx?op=FileComplaint</faultactor>
      <detail>ErrorOccured..</detail>
    </soap:Fault>
  </soap:Body>
</soap:Envelope>

在上述两个消息中,FaultString是不同的,但两个服务器中的代码完全相同。

1 个答案:

答案 0 :(得分:0)

此问题通常是由两台服务器上的web.config文件的差异引起的。特别是,查看<customErrors>元素是否不同。

如果web.configs相同,请查看两台服务器上machine.config文件的差异。