Свойство detail объекта SoapException, установленного в веб-службе .NET, в клиенте веб-службы Java становится пустым - PullRequest
2 голосов
/ 03 октября 2011

Итак, я написал простой веб-сервис asmx .NET на C #. Все исключения перехватываются и перебрасываются как SoapException со свойством Detail , настроенным на XmlNode, который содержит три подузла с дополнительной информацией о возникшем исключении. На стороне Java поверхность исключений сервера как SoapFaultException. Но когда я пытаюсь напечатать ex.getFault (). GetDetail () , это выглядит как null . Поэтому мой вопрос: почему это происходит или что я делаю не так?

Наконец-то удалось получить сырой ответ SOAP:

HTTP/1.1 500 Internal Server Error
Cache-Control: private
Content-Type: text/xml; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
X-Powered-By: ASP.NET
Date: Tue, 04 Oct 2011 20:13:21 GMT
Content-Length: 2143

<?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:Server</faultcode>
<faultstring>System.Web.Services.Protocols.SoapException: ...</faultstring>
<faultactor>CustomSoapException</faultactor>
<detail>
        <CustomExceptionType>BackendException</CustomExceptionType>
        <UserMessage>Internal application error occured. Please contact application developer for quick resolution.</UserMessage>
        <DeveloperMessage>Exception details: ....</DeveloperMessage>
    </detail>
</soap:Fault>
</soap:Body>
</soap:Envelope>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...