Ich arbeite mit einem SOAP-Webdienst, der mit dem Format des XML-Körpers, den er empfängt, ziemlich unversöhnlich zu sein scheint. Zum Beispiel, wenn ich beinhalten nicht die xsi: type-Eigenschaft, wie folgt aus:SOAP Spring WS - Jaxb2Marshaller enthält keine xsi: type beim Unmarshalling
<SOME_TAG>New York</SOME_TAG>
Ich erhalte eine Fehlermeldung, dass „No Deserializer eine‚SOME_TAG‘mit Codierung Stil‚http://schemas.xmlsoap.org/encoding/‘deserialisieren gefunden“
wenn ich jedoch den Tag dies zu ändern, ist alles in Ordnung:
<SOME_TAG xsi:type="xsd:string">New York</SOME_TAG>
Leider kann ich nicht herausfinden, wie die Jaxb2Marshaller bekommen die xsi enthalten: Art Attribut. Ich habe versucht, 'type = String.class' in der @ XmlElement-Annotation hinzuzufügen, aber es hat die Ausgabe nicht geändert.
Alle Tipps oder Anleitungen werden sehr geschätzt!
Das klingt sehr ungewöhnlich für eine SOAP WS. Ist 'SOME_TAG' in der' .wsdl' Datei definiert? Generiert Ihr Programm den richtigen Namespace? –
Ja, ich fand es auch ungewöhnlich. So sieht die Definition in der .wsdl-Datei aus: . Namensraum-Sachen sehen für mich normal aus. –
Können Sie die WSDL und die XML-Anfrage posten? Ich denke, das würde bei der Diagnose helfen. –