|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.springframework.ws.soap.security.AbstractWsSecurityInterceptor
public abstract class AbstractWsSecurityInterceptor
Interceptor base class for interceptors that handle WS-Security. Can be used on the server side, registered in a
endpoint mapping
; or on the client side, on the web service template
.
Field Summary | |
---|---|
protected org.apache.commons.logging.Log |
logger
Logger available to subclasses. |
protected static QName |
WS_SECURITY_NAME
|
Constructor Summary | |
---|---|
AbstractWsSecurityInterceptor()
|
Method Summary | |
---|---|
void |
afterCompletion(MessageContext messageContext,
Object endpoint,
Exception ex)
|
protected abstract void |
cleanUp()
|
boolean |
handleFault(MessageContext messageContext)
Returns true , i.e. |
boolean |
handleFault(MessageContext messageContext,
Object endpoint)
Returns true , i.e. |
protected boolean |
handleFaultException(WsSecurityFaultException ex,
MessageContext messageContext)
Handles a fault exception.Default implementation logs the given exception, and creates a SOAP Fault with the properties of the given exception, and returns false . |
boolean |
handleRequest(MessageContext messageContext)
Secures a client-side outgoing request. |
boolean |
handleRequest(MessageContext messageContext,
Object endpoint)
Validates a server-side incoming request. |
boolean |
handleResponse(MessageContext messageContext)
Validates a client-side incoming response. |
boolean |
handleResponse(MessageContext messageContext,
Object endpoint)
Secures a server-side outgoing response. |
protected boolean |
handleSecurementException(WsSecuritySecurementException ex,
MessageContext messageContext)
Handles an securement exception. |
protected boolean |
handleValidationException(WsSecurityValidationException ex,
MessageContext messageContext)
Handles an invalid SOAP message. |
protected abstract void |
secureMessage(SoapMessage soapMessage,
MessageContext messageContext)
Abstract template method. |
void |
setExceptionResolver(EndpointExceptionResolver exceptionResolver)
Provide an EndpointExceptionResolver for resolving validation exceptions. |
void |
setSecureRequest(boolean secureRequest)
Indicates whether client-side outgoing requests are to be secured. |
void |
setSecureResponse(boolean secureResponse)
Indicates whether server-side outgoing responses are to be secured. |
void |
setSkipValidationIfNoHeaderPresent(boolean skipValidationIfNoHeaderPresent)
Allows skipping validation if no security header is present. |
void |
setValidateRequest(boolean validateRequest)
Indicates whether server-side incoming request are to be validated. |
void |
setValidateResponse(boolean validateResponse)
Indicates whether client-side incoming responses are to be validated. |
boolean |
understands(SoapHeaderElement headerElement)
|
protected abstract void |
validateMessage(SoapMessage soapMessage,
MessageContext messageContext)
Abstract template method. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected final org.apache.commons.logging.Log logger
protected static final QName WS_SECURITY_NAME
Constructor Detail |
---|
public AbstractWsSecurityInterceptor()
Method Detail |
---|
public void setValidateRequest(boolean validateRequest)
true
.
public void setSecureResponse(boolean secureResponse)
true
.
public void setSecureRequest(boolean secureRequest)
true
.
public void setValidateResponse(boolean validateResponse)
true
.
public void setExceptionResolver(EndpointExceptionResolver exceptionResolver)
EndpointExceptionResolver
for resolving validation exceptions.
public void setSkipValidationIfNoHeaderPresent(boolean skipValidationIfNoHeaderPresent)
public final boolean handleRequest(MessageContext messageContext, Object endpoint) throws Exception
validateMessage(org.springframework.ws.soap.SoapMessage,org.springframework.ws.context.MessageContext)
if the validateRequest
property is true
.
handleRequest
in interface EndpointInterceptor
messageContext
- the message context, containing the request to be validatedendpoint
- chosen endpoint to invoke
true
if the request was valid; false
otherwise.
Exception
- in case of errorsvalidateMessage(org.springframework.ws.soap.SoapMessage,org.springframework.ws.context.MessageContext)
public final boolean handleResponse(MessageContext messageContext, Object endpoint) throws Exception
secureMessage(org.springframework.ws.soap.SoapMessage,org.springframework.ws.context.MessageContext)
if the secureResponse
property is true
.
handleResponse
in interface EndpointInterceptor
messageContext
- the message context, containing the response to be securedendpoint
- chosen endpoint to invoke
true
if the response was secured; false
otherwise.
Exception
- in case of errorssecureMessage(org.springframework.ws.soap.SoapMessage,org.springframework.ws.context.MessageContext)
public boolean handleFault(MessageContext messageContext, Object endpoint) throws Exception
true
, i.e. fault responses are not secured.
handleFault
in interface EndpointInterceptor
Exception
public void afterCompletion(MessageContext messageContext, Object endpoint, Exception ex)
afterCompletion
in interface EndpointInterceptor
public boolean understands(SoapHeaderElement headerElement)
understands
in interface SoapEndpointInterceptor
public final boolean handleRequest(MessageContext messageContext) throws WebServiceClientException
secureMessage(org.springframework.ws.soap.SoapMessage,org.springframework.ws.context.MessageContext)
if the secureRequest
property is true
.
handleRequest
in interface ClientInterceptor
messageContext
- the message context, containing the request to be secured
true
if the response was secured; false
otherwise.
Exception
- in case of errors
WebServiceClientException
secureMessage(org.springframework.ws.soap.SoapMessage,org.springframework.ws.context.MessageContext)
public final boolean handleResponse(MessageContext messageContext) throws WebServiceClientException
validateMessage(org.springframework.ws.soap.SoapMessage,org.springframework.ws.context.MessageContext)
if the validateResponse
property is true
.
handleResponse
in interface ClientInterceptor
messageContext
- the message context, containing the response to be validated
true
if the request was valid; false
otherwise.
Exception
- in case of errors
WebServiceClientException
validateMessage(org.springframework.ws.soap.SoapMessage,org.springframework.ws.context.MessageContext)
public boolean handleFault(MessageContext messageContext) throws WebServiceClientException
true
, i.e. fault responses are not validated.
handleFault
in interface ClientInterceptor
WebServiceClientException
protected boolean handleSecurementException(WsSecuritySecurementException ex, MessageContext messageContext)
false
.
ex
- the validation exceptionmessageContext
- the message context
true
to continue processing the message, false
(the default) otherwiseprotected boolean handleValidationException(WsSecurityValidationException ex, MessageContext messageContext)
exceptionResolver
if any, or creates a SOAP 1.1 Client or SOAP
1.2 Sender Fault with the exception message as fault string, and returns false
.
ex
- the validation exceptionmessageContext
- the message context
true
to continue processing the message, false
(the default) otherwiseprotected boolean handleFaultException(WsSecurityFaultException ex, MessageContext messageContext)
false
.
ex
- the validation exceptionmessageContext
- the message context
true
to continue processing the message, false
(the default) otherwiseprotected abstract void validateMessage(SoapMessage soapMessage, MessageContext messageContext) throws WsSecurityValidationException
SoapMessage
, and replace the original request with the validated version.
soapMessage
- the soap message to validate
WsSecurityValidationException
- in case of validation errorsprotected abstract void secureMessage(SoapMessage soapMessage, MessageContext messageContext) throws WsSecuritySecurementException
SoapMessage
, and replace the original response with the secured version.
soapMessage
- the soap message to secure
WsSecuritySecurementException
- in case of securement errorsprotected abstract void cleanUp()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |