java.lang.Object
com.sun.xml.ws.fault.SOAPFaultBuilder
Base class that represents SOAP 1.1 or SOAP 1.2 fault. This class can be used by the invocation handlers to create
an Exception from a received messge.
- Author:
- Vivek Pandey
-
Field Summary
Modifier and TypeFieldDescriptionstatic final boolean
Set to false if you don't want the generated faults to have stack trace in it. -
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic SOAPFaultBuilder
Parses a faultMessage
and returns it as aSOAPFaultBuilder
.createException
(Map<QName, CheckedExceptionImpl> exceptions) This should be called from the client side to throw anException
for a given soap mesageprotected static String
protected static String
createFaultString
(String faultString) static Message
createSOAPFaultMessage
(SOAPVersion soapVersion, CheckedExceptionImpl ceModel, Throwable ex) To be called by the server runtime in the situations when there is an Exception that needs to be transformed in to a soapenv:Fault payload.static Message
createSOAPFaultMessage
(SOAPVersion soapVersion, CheckedExceptionImpl ceModel, Throwable ex, QName faultCode) Create the Message with the specified faultCodestatic Message
createSOAPFaultMessage
(SOAPVersion soapVersion, String faultString, QName faultCode) Server runtime will call this when there is some internal error not resulting from an exception.static Message
createSOAPFaultMessage
(SOAPVersion soapVersion, javax.xml.soap.SOAPFault fault) static Message
createSOAPFaultMessage
(SOAPVersion soapVersion, javax.xml.ws.ProtocolException ex, QName faultcode) protected abstract Throwable
static boolean
static void
setCaptureExceptionMessage
(boolean capture)
-
Field Details
-
captureStackTrace
public static final boolean captureStackTraceSet to false if you don't want the generated faults to have stack trace in it.
-
-
Constructor Details
-
SOAPFaultBuilder
protected SOAPFaultBuilder()Default constructor.
-
-
Method Details
-
getFirstDetailEntryName
-
createException
public Throwable createException(Map<QName, CheckedExceptionImpl> exceptions) throws javax.xml.bind.JAXBExceptionThis should be called from the client side to throw anException
for a given soap mesage- Throws:
javax.xml.bind.JAXBException
-
createSOAPFaultMessage
@NotNull public static Message createSOAPFaultMessage(@NotNull SOAPVersion soapVersion, @NotNull javax.xml.ws.ProtocolException ex, @Nullable QName faultcode) - Parameters:
soapVersion
-SOAPVersion.SOAP_11
orSOAPVersion.SOAP_12
ex
- a ProtocolExceptionfaultcode
- soap faultcode. Its ignored if theProtocolException
instance isSOAPFaultException
and it has a faultcode present in the underlyingSOAPFault
.- Returns:
Message
representing SOAP fault
-
createSOAPFaultMessage
public static Message createSOAPFaultMessage(SOAPVersion soapVersion, CheckedExceptionImpl ceModel, Throwable ex) To be called by the server runtime in the situations when there is an Exception that needs to be transformed in to a soapenv:Fault payload.- Parameters:
ceModel
-CheckedExceptionImpl
model that provides useful informations such as the detail tagname and the Exception associated with it. Caller of this constructor should get the CheckedException model by callingJavaMethodImpl.getCheckedException(Class)
, where Class is t.getClass().If its null then this is not a checked exception and in that case the soap fault will be serialized only from the exception as described below.
ex
- Exception that needs to be translated into soapenv:Fault, always non-null.- If t is instance of
SOAPFaultException
then its serilaized as protocol exception. - If t.getCause() is instance of
SOAPFaultException
and t is a checked exception then the soap fault detail is serilaized from t and the fault actor/string/role is taken from t.getCause().
- If t is instance of
soapVersion
- non-null
-
createSOAPFaultMessage
public static Message createSOAPFaultMessage(SOAPVersion soapVersion, CheckedExceptionImpl ceModel, Throwable ex, QName faultCode) Create the Message with the specified faultCode -
createSOAPFaultMessage
public static Message createSOAPFaultMessage(SOAPVersion soapVersion, String faultString, QName faultCode) Server runtime will call this when there is some internal error not resulting from an exception.- Parameters:
soapVersion
-SOAPVersion.SOAP_11
orSOAPVersion.SOAP_12
faultString
- must be non-nullfaultCode
- For SOAP 1.1, it must be one of For SOAP 1.2- Returns:
- non-null
Message
-
createSOAPFaultMessage
public static Message createSOAPFaultMessage(SOAPVersion soapVersion, javax.xml.soap.SOAPFault fault) -
getProtocolException
-
create
Parses a faultMessage
and returns it as aSOAPFaultBuilder
.- Returns:
- always non-null valid object.
- Throws:
javax.xml.bind.JAXBException
- if the parsing fails.
-
setCaptureExceptionMessage
public static void setCaptureExceptionMessage(boolean capture) -
isCaptureExceptionMessage
public static boolean isCaptureExceptionMessage() -
createFaultString
-
createFaultString
-