1 package org
.argeo
.slc
.ws
;
3 import javax
.xml
.namespace
.QName
;
5 import org
.springframework
.ws
.context
.MessageContext
;
6 import org
.springframework
.ws
.soap
.SoapFault
;
7 import org
.springframework
.ws
.soap
.SoapFaultDetail
;
8 import org
.springframework
.ws
.soap
.server
.endpoint
.SimpleSoapExceptionResolver
;
10 import org
.apache
.commons
.logging
.Log
;
11 import org
.apache
.commons
.logging
.LogFactory
;
13 public class CustomSoapExceptionResolver
extends SimpleSoapExceptionResolver
{
14 private Log log
= LogFactory
.getLog(getClass());
17 protected void customizeFault(MessageContext messageContext
,
18 Object endpoint
, Exception ex
, SoapFault fault
) {
19 log
.error("Exception " + ex
.getMessage() + " in end point " + endpoint
,
21 SoapFaultDetail detail
= fault
.addFaultDetail();
22 for (StackTraceElement elem
: ex
.getStackTrace()) {
23 detail
.addFaultDetailElement(new QName("StackElement")).addText(