1 package org.objectweb.celtix.bus.bindings.soap; 2 3 import javax.xml.namespace.QName ; 4 import javax.xml.soap.SOAPException ; 5 import javax.xml.soap.SOAPFactory ; 6 import javax.xml.soap.SOAPFault ; 7 import javax.xml.ws.soap.SOAPFaultException; 8 9 public final class SOAPFaultExHelper { 10 private SOAPFaultExHelper() { 11 } 13 14 public static SOAPFaultException createSOAPFaultEx(SOAPFactory soapFactory, 15 QName faultCode, 16 Throwable cause) { 17 18 StringBuffer str = new StringBuffer (cause.toString()); 19 str.append("\n"); 20 for (StackTraceElement s : cause.getStackTrace()) { 21 str.append(s.toString()); 22 str.append("\n"); 23 } 24 25 SOAPFaultException sfe = createSOAPFaultEx(soapFactory, faultCode, str.toString()); 26 sfe.initCause(cause); 27 return sfe; 28 } 29 30 public static SOAPFaultException createSOAPFaultEx(SOAPFactory soapFactory, 31 QName faultCode, 32 String message) { 33 SOAPFault sf = null; 34 try { 35 sf = soapFactory.createFault(); 36 sf.setFaultCode(faultCode); 37 sf.setFaultString(message); 38 } catch (SOAPException se) { 39 se.printStackTrace(); 40 } 41 return new SOAPFaultException(sf); 42 } 43 44 } 45 | Popular Tags |