Comment Modifier Le XML Brut, message d'un émetteur CXF Demande?

Je voudrais modifier un sortant une Requête SOAP.
Je voudrais enlever 2 nœuds xml à partir de l'Enveloppe du corps.
J'ai réussi à mettre en place un Intercepteur et obtenir le générés Chaîne de valeur de l'ensemble de messages au point de terminaison.

Cependant, le code suivant ne semble pas fonctionner tant que le message sortant est pas modifié comme prévu. Quelqu'un aurait-il un code ou des idées sur comment faire cela?

public class MyOutInterceptor extends AbstractSoapInterceptor {

public MyOutInterceptor() {
        super(Phase.SEND); 
}

public void handleMessage(SoapMessage message) throws Fault { 
        //Get message content for dirty editing...
        StringWriter writer = new StringWriter();
        CachedOutputStream cos  = (CachedOutputStream)message.getContent(OutputStream.class); 
        InputStream inputStream = cos.getInputStream();
        IOUtils.copy(inputStream, writer, "UTF-8");
        String content = writer.toString();

        //remove the substrings from envelope...
        content = content.replace("<idJustification>0</idJustification>", "");
        content = content.replace("<indicRdv>false</indicRdv>", "");
        ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
        outputStream.write(content.getBytes(Charset.forName("UTF-8")));
        message.setContent(OutputStream.class, outputStream);
} 

OriginalL'auteur kiwifrog | 2011-08-02