Spring Web Services Framework

org.springframework.ws.soap.server.endpoint.interceptor
Class PayloadValidatingInterceptor

java.lang.Object
  extended by org.springframework.xml.transform.TransformerObjectSupport
      extended by org.springframework.ws.server.endpoint.interceptor.AbstractValidatingInterceptor
          extended by org.springframework.ws.soap.server.endpoint.interceptor.AbstractFaultCreatingValidatingInterceptor
              extended by org.springframework.ws.soap.server.endpoint.interceptor.PayloadValidatingInterceptor
All Implemented Interfaces:
InitializingBean, EndpointInterceptor

public class PayloadValidatingInterceptor
extends AbstractFaultCreatingValidatingInterceptor

Interceptor that validates the contents of WebServiceMessages using a schema. Allows for both W3C XML and RELAX NG schemas.

When the payload is invalid, this interceptor stops processing of the interceptor chain. Additionally, if the message is a SOAP request message, a SOAP Fault is created as reply. Invalid SOAP responses do not result in a fault.

The schema to validate against is set with the schema property or schemas property. By default, only the request message is validated, but this behaviour can be changed using the validateRequest and validateResponse properties. Responses that contains faults are not validated.

Since:
1.0.0
Author:
Arjen Poutsma
See Also:
AbstractValidatingInterceptor.setSchema(org.springframework.core.io.Resource), AbstractValidatingInterceptor.setSchemas(org.springframework.core.io.Resource[]), AbstractValidatingInterceptor.setValidateRequest(boolean), AbstractValidatingInterceptor.setValidateResponse(boolean)

Field Summary
 
Fields inherited from class org.springframework.ws.soap.server.endpoint.interceptor.AbstractFaultCreatingValidatingInterceptor
DEFAULT_DETAIL_ELEMENT_NAME, DEFAULT_FAULTSTRING_OR_REASON
 
Fields inherited from class org.springframework.xml.transform.TransformerObjectSupport
logger
 
Constructor Summary
PayloadValidatingInterceptor()
           
 
Method Summary
protected  Source getValidationRequestSource(WebServiceMessage request)
          Returns the payload source of the given message.
protected  Source getValidationResponseSource(WebServiceMessage response)
          Returns the payload source of the given message.
 
Methods inherited from class org.springframework.ws.soap.server.endpoint.interceptor.AbstractFaultCreatingValidatingInterceptor
getAddValidationErrorDetail, getDetailElementName, getFaultStringOrReason, getFaultStringOrReasonLocale, handleRequestValidationErrors, setAddValidationErrorDetail, setDetailElementName, setFaultStringOrReason, setFaultStringOrReasonLocale
 
Methods inherited from class org.springframework.ws.server.endpoint.interceptor.AbstractValidatingInterceptor
afterPropertiesSet, getSchemaLanguage, getSchemas, handleFault, handleRequest, handleResponse, handleResponseValidationErrors, setSchema, setSchemaLanguage, setSchemas, setValidateRequest, setValidateResponse, setXsdSchema, setXsdSchemaCollection
 
Methods inherited from class org.springframework.xml.transform.TransformerObjectSupport
createTransformer, getTransformerFactory, newTransformerFactory, setTransformerFactoryClass, transform
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PayloadValidatingInterceptor

public PayloadValidatingInterceptor()
Method Detail

getValidationRequestSource

protected Source getValidationRequestSource(WebServiceMessage request)
Returns the payload source of the given message.

Specified by:
getValidationRequestSource in class AbstractValidatingInterceptor
Parameters:
request - the request message
Returns:
the part of the message that is to validated, or null not to validate anything

getValidationResponseSource

protected Source getValidationResponseSource(WebServiceMessage response)
Returns the payload source of the given message.

Specified by:
getValidationResponseSource in class AbstractValidatingInterceptor
Parameters:
response - the response message
Returns:
the part of the message that is to validated, or null not to validate anything

Spring Web Services Framework

Copyright © 2005-2010 The Spring Web Services Framework. All Rights Reserved.