¿Cómo puede un interceptor Spring Soap modificar el contenido de un mensaje?

Estoy tratando de escribir un interceptor para un servicio web que modificará el contenido del mensaje Soap antes de enviarlo al punto final. Si un cliente envió un mensaje donde el valor de algún elemento es 1, quiero poder alterar ese elemento a 2 para que, cuando el mensaje llegue al punto final, parezca que el cliente envió un 2 en lugar de un 1. No estoy seguro de si esta es una tarea difícil que me está eludiendo, o una tarea fácil que estoy haciendo más difícil de lo necesario.

He pasado por algunos de los interceptores Spring; pero la validación y los interceptores de registro no alteran el mensaje que está en tránsito. El Wss4jSecurityInterceptor agrega algunas propiedades al MessageContext; pero no he podido aprovechar nada de lo que está haciendo. Tengo un caparazón de un interceptor; pero nada que esté haciendo algo de ningún valor.

public boolean handleRequest(MessageContext messageContext, Object endpoint)
        throws Exception {

    SaajSoapMessage saajSoapMessage = (SaajSoapMessage) messageContext
            .getRequest();
    SOAPMessage soapMessage = saajSoapMessage.getSaajMessage();
    SOAPBody soapBody = soapMessage.getSOAPBody();

    return true;
}

Esperaba que hubiera una posibilidad de que alguien más ya hubiera resuelto este problema en particular. Cualquier idea sería apreciada. Gracias.

Respuestas a la pregunta(3)

Su respuesta a la pregunta