我如何获得SoapFaultClientException发送的故障详细信息?
我使用webservicetemplate,如下所示:
webservicetemplate ws = new webservicetemplate();
ws.setMarshaller(client.getMarshaller());
ws.setUnmarshaller(client.getUnMarshaller());
try {
MyResponse resp = (MyResponse) = ws.marshalSendAndReceive(WS_URI,req);
} catch (SoapFaultClientException e) {
SoapFault fault = e.getSoapFault();
SoapFaultDetail details = e.getSoapFault().getFaultDetail();
//details always NULL ? Bug?
}
发送的Web服务错误似乎是正确的:
NowN
谢谢
Willome
最佳答案
我还遇到了getFaultDetail()返回null(对于SharePoint Web服务)的问题.我可以通过使用类似于此的方法来获取detail元素:
private Element getDetail(SoapFaultClientException e) throws TransformerException {
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer();
Domresult result = new Domresult();
transformer.transform(e.getSoapFault().getSource(),result);
NodeList nl = ((Document)result.getNode()).getElementsByTagName("detail");
return (Element)nl.item(0);
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。