umgewandelt werden Ich habe die Soap-Nachrichten von einem SOAP-Service heruntergeladen und versucht, den Soap-Dienst zu verspotten, indem er die heruntergeladenen zurückgibt Mitteilungen. Der folgende Code zeigt, wie ich die SOAP-Nachricht in die gewünschte AntwortNetbeans mit JAXB Random ClassCastException .. kann nicht in com.sun.xml.bind.v2.runtime.reflect.Accessor
public static DataClientType unmarshallFile(String fileName) throws Exception {
XMLInputFactory xif = XMLInputFactory.newFactory();
XMLStreamReader xsr = xif.createXMLStreamReader(ClientSampleSoapResponseData.class.getResourceAsStream(fileName));
xsr.nextTag(); // Advance to Envelope tag
xsr.nextTag(); // Advance to Header
xsr.nextTag(); // Advance to Body tag
xsr.nextTag(); // Advance to getClientByAccountResponse
xsr.nextTag(); // Advance to content of getClientByAccountResponse
JAXBContext jc = JAXBContext.newInstance(GetClientByAccountResponse.class);
Unmarshaller unmarshaller = jc.createUnmarshaller();
JAXBElement<GetClientByAccountResponse> je = unmarshaller.unmarshal(xsr, GetClientByAccountResponse.class);
return je.getValue().getClientDataContract();
}
Jedoch habe ich diesen ClassCastExeption erhalte ich unmarshalling die zufällig passiert. Nach einer Reihe von Testiterationen beginnt es zu passieren. Manchmal behebt ein Clean und Build es, aber manchmal funktioniert es nicht.
java.lang.ClassCastException: com.x.X.X.X.GetClientByAccountResponse$JaxbAccessorF_clientDataContract cannot be cast to com.sun.xml.bind.v2.runtime.reflect.Accessor
at com.sun.xml.bind.v2.runtime.reflect.opt.OptimizedAccessorFactory.instanciate(OptimizedAccessorFactory.java:188)
at com.sun.xml.bind.v2.runtime.reflect.opt.OptimizedAccessorFactory.get(OptimizedAccessorFactory.java:180)
at com.sun.xml.bind.v2.runtime.reflect.Accessor$FieldReflection.optimize(Accessor.java:256)
at com.sun.xml.bind.v2.runtime.property.SingleElementNodeProperty.<init>(SingleElementNodeProperty.java:90)
Ich habe andere Online-Vorschläge versucht, wie zu alten jaxb Versionen zurückkehren und mit Hilfe unterstützten Ordner in der Maven-Compiler-Konfiguration, aber es passiert immer noch
Alle Ideen, was könnte es und mögliche Lösungen verursachen?
Thank u
@TheDownVoter Wenn Sie Leute Fragen nach unten gehen, geben Sie mindestens einen Grund oder schlagen Sie etwas vor! Denken Sie daran, dass wir nicht alle so schlau sind wie Sie. –