Spring Web Services Framework

org.springframework.ws.server.endpoint
Class AbstractXomPayloadEndpoint

java.lang.Object
  extended by org.springframework.xml.transform.TransformerObjectSupport
      extended by org.springframework.ws.server.endpoint.AbstractXomPayloadEndpoint
All Implemented Interfaces:
PayloadEndpoint

public abstract class AbstractXomPayloadEndpoint
extends TransformerObjectSupport
implements PayloadEndpoint

Abstract base class for endpoints that handle the message payload as XOM elements. Offers the message payload as a XOM Element, and allows subclasses to create a response by returning an Element.

An AbstractXomPayloadEndpoint only accept one payload element. Multiple payload elements are not in accordance with WS-I.

Since:
1.0.0
Author:
Arjen Poutsma
See Also:
Element

Field Summary
 
Fields inherited from class org.springframework.xml.transform.TransformerObjectSupport
logger
 
Constructor Summary
AbstractXomPayloadEndpoint()
           
 
Method Summary
protected  Serializer createSerializer(OutputStream outputStream)
          Creates a Serializer to be used for writing the response to.
 Source invoke(Source request)
          Invokes the endpoint with the given request payload, and possibly returns a response.
protected abstract  Element invokeInternal(Element requestElement)
          Template method.
 
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

AbstractXomPayloadEndpoint

public AbstractXomPayloadEndpoint()
Method Detail

invoke

public final Source invoke(Source request)
                    throws Exception
Description copied from interface: PayloadEndpoint
Invokes the endpoint with the given request payload, and possibly returns a response.

Specified by:
invoke in interface PayloadEndpoint
Parameters:
request - the payload of the request message, may be null
Returns:
the payload of the response message, may be null to indicate no response
Throws:
Exception - if an exception occurs

createSerializer

protected Serializer createSerializer(OutputStream outputStream)
Creates a Serializer to be used for writing the response to.

Default implementation uses the UTF-8 encoding and does not set any options, but this may be changed in subclasses.

Parameters:
outputStream - the output stream to serialize to
Returns:
the serializer

invokeInternal

protected abstract Element invokeInternal(Element requestElement)
                                   throws Exception
Template method. Subclasses must implement this. Offers the request payload as a XOM Element, and allows subclasses to return a response Element.

Parameters:
requestElement - the contents of the SOAP message as XOM element
Returns:
the response element. Can be null to specify no response.
Throws:
Exception

Spring Web Services Framework

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