2016-05-20 9 views
-1

Ich erhalte die folgende Ausnahme, wenn ich versuche, eine SOAP-Nachricht in eine Zeichenfolge zu konvertieren:Wie behebe ich diese IOException beim Konvertieren einer XML-Anfrage/-Antwort in einen String?

java.io.IOException: The serializer class 'org.apache.xml.serializer.ToXMLStream' does not implement org.xml.sax.ContentHandler. 
at com.sun.xml.messaging.saaj.soap.impl.EnvelopeImpl.output(EnvelopeImpl.java:309) 
at com.sun.xml.messaging.saaj.soap.impl.EnvelopeImpl.output(EnvelopeImpl.java:320) 
at com.sun.xml.messaging.saaj.soap.SOAPPartImpl.getContentAsStream(SOAPPartImpl.java:326) 
at com.sun.xml.messaging.saaj.soap.MessageImpl.getHeaderBytes(MessageImpl.java:1030) 
at com.sun.xml.messaging.saaj.soap.MessageImpl.saveChanges(MessageImpl.java:1181) 
at com.sun.xml.messaging.saaj.soap.MessageImpl.writeTo(MessageImpl.java:1311) 
at com.HeaderHandler.handleFault(HeaderHandler.java:155) 
at com.HeaderHandler.handleFault(HeaderHandler.java:37) 

Hier den Code, der ausgeführt wird:

SOAPMessage message = smc.getMessage(); <-- smc = SOAPMessageContext 
ByteArrayOutputStream stream = ByteArrayOutputStream(); 
message.writeTo(stream); 

Wir haben gerade zu einem Jboss Umgebung bewegt (eap 6.4) und dies funktionierte lokal in einem junit, also vermute ich, dass etwas in der Umgebung fehlt, wie eine fehlende Modulabhängigkeit.

Kann jemand etwas Licht darüber werfen, was diesen Fehler verursacht und wie er behoben werden kann?

Antwort

0

Es ist klar von java.io.IOException: The serializer class 'org.apache.xml.serializer.ToXMLStream' does not implement org.xml.sax.ContentHandler. Das ist die Ursache.

Wie zu beheben ist, dass Sie etwas verwenden müssen, das org.xml.sax.ContentHandler implementiert.

+0

Ich entschuldige mich und ich werde das Glas überprüfen, wenn ich zurück ins Büro komme, aber ich dachte, dass dies tat: https://xml.apache.org/xalan-j/apidocs/org/xml/sax/class -use/ContentHandler.html # org.apache.xml.serializer – John