2016-12-14 2 views
1

Leute,Erweiterung JAXB generierten Objekte in JAXB 2.0

Ich versuche, eine automatische Substitution von JAXB Objekten mit ihren überladenen angepassten Versionen so, wie es in diesem Artikel beschrieben wird, zu implementieren:

https://jaxb.java.net/guide/Adding_behaviors.html

Das Problem ist, dass dieser Artikel über JAXB 1.0 spricht und der gleiche Mechanismus in 2.0 einfach nicht funktioniert. Der Unmarshaller lädt nur das schemadefinierte Objekt in die Objekthierarchie, und die Erweiterung dieses Objekts und der ObjectFactory-Klasse scheint nicht einfach ignoriert zu werden.

Es muss eine Möglichkeit geben, das zu tun, was im obigen Artikel in JAXB 2.0 beschrieben wurde. Ich kann es nicht herausfinden. Vielleicht muss ich xjb-Datei verwenden, um dieses Verhalten oder etwas ähnliches zu definieren. Irgendwelche Gedanken werden geschätzt.

Dank

+0

Sehen Sie dies: http://stackoverflow.com/questions/26439184/why-is-the-objectfactory-not-use-during-unmarshalling – lexicore

Antwort

0

wie der beste Weg sieht, es zu tun die Bindung mit XJB Datei anpassen und haben es folgende Inhalte enthalten:

<jxb:bindings node="//xs:complexType[@name='MyClassDataType']"> 
    <jxb:class implClass="my.package.MyClassType"/> 
</jxb:bindings>  

oder

<jxb:bindings node="//xs:element[@name='MyClassData']"> 
    <jxb:class implClass="my.package.MyClass"/> 
</jxb:bindings> 

Dies scheint sich um meine Bedürfnisse kümmern.