Ich passe JAXB-Beans an, die von einer WSDL-Datei mit jaxws-maven-plugin erzeugt werden. Um sie anzupassen, verwende ich eine Bindungsdatei.JAXWS- und JAXB-Bindungen kombinieren
Grundsätzlich möchte ich:
- verhindern, dass die Erzeugung von JAXBElement
- Namen ein Element anpassen
Meine Bindungsdatei ist:
<jaxws:bindings version="2.1"
xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:jaxws="http://java.sun.com/xml/ns/jaxws">
<!--Element 1-->
<jaxb:globalBindings generateElementProperty="false">
<xjc:simple/>
</jaxb:globalBindings>
<!--Element 2-->
<jaxb:bindings xmlns:xs="http://www.w3.org/2001/XMLSchema" node="//xs:complexType[@name='WorkDocuments']/xs:choice">
<jaxb:property name="documents"/>
</jaxb:bindings>
Das Problem ist, dass, wenn ich jaxws:bindings
als Wurzelelement verwenden die Element 1 nicht funktioniert hat und JAXBElement werden
erzeugt Und wenn ich jaxb:bindings
als Wurzelelement verwenden dann Element 1 funktioniert, aber Element 2 doesn‘ t Da die XPath-Ausdrücke keinem Element entsprechen.
Wie kann ich die Bindungsdatei korrigieren, damit die beiden Elemente gleichzeitig funktionieren?