2013-02-25 4 views
1

비누 예외에 문제가 있습니다. 다음과 같이 브라우저에 표시 할 나는 asp.net 웹 서비스에 비누 예외를 throw하고있어 (XML의 형태로) 어떻게 든 그 예외를 얻을 수 있습니다wsdl 비누 예외

SOAP 1.1 
<?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></faultstring> 
<detail> 
<Error> 
<ErrorNumber>1</ErrorNumber> 
<ErrorMessage>Error...</ErrorMessage> 
</Error> 
</detail> 
</soap:Fault> 
</soap:Body> 
</soap:Envelope> 

웹 서비스에서 예외를 던지는 :

XmlDocument doc = new XmlDocument(); 
XmlNode detailNode = doc.CreateNode(XmlNodeType.Element, SoapException.DetailElementName.Name, SoapException.DetailElementName.Namespace); 
XmlElement details = doc.CreateElement("Error"); 

XmlElement detailchild1 = doc.CreateElement("ErrorNumber"); 
detailchild1.InnerText = "1"; 
XmlElement detailchild2 = doc.CreateElement("ErrorMessage"); 
detailchild2.InnerText = "Error..."; 
details.AppendChild(detailchild1); 
details.AppendChild(detailchild2); 

detailNode.AppendChild(details); 

throw new SoapException("Fault", SoapException.ClientFaultCode, "", details); 

해당 서비스를 호출하는 Windows 응용 프로그램에서 테스트하면 예외를 발견하고 모든 세부 정보를 추출하여 모든 것이 xml 생성 및 예외 예외 처리와 함께 작동하는 것처럼 보일 수 있습니다. 하지만 브라우저에서 가져 오는 것은 모두 내부 오류 500이며 다른 답변에 따르면 정상적인 동작을 발견했습니다. 어떻게 든

답변

0

throw new SoapException("Fault", SoapException.ClientFaultCode, "", details); 

throw new SoapException("Fault", SoapException.ClientFaultCode, "", detailNode); 

안 ..., 아마의 web.config, IIS 설정을 변경하여 대신 내부 오류 500의 브라우저에서 해당 XML을받을 수 있습니까?

관련 문제