Frage

Erster Versuch, diese kühle Seite zu benutzen - nach 2 Stunden der Suche: So habe ich einen Java Bean, die gegeben ist (ich kann nur dann ändern, mit Anmerkungen versehen nicht) und müssen es XML abzubilden JAXB verwenden. Ich würde Primitive Typen wie nicht gedruckt werden, wenn sie ihre Standardsprache oder einen benutzerdefinierten Standard enthalten.

Wie gesagt ich nicht die Java Bean ändern kann, und daher die primitiven Typen in ihre Object Wrappers Pendants ändern.

Wie Sie das tun, am besten?

Beispiel-Bean:

class Foo {  
public String name;  
// -1 is user defined default, to indicate field is not set.  
public long someIdx=-1;  
// ...  
}  

Foo f = new Foo();  
f.name = "Duke";

für diese Instanziierung, was ich möchte, ist die folgende Ausgabe:

<foo><name>Duke</name></foo>
War es hilfreich?

Lösung

Sie könnten JAXB verwenden die XmlAdapters. Availible seit JAXB 2.0 (JDK 6.0)

Sie den Adapter verwenden, können Sie die Bohne allein und mit Anmerkungen versehen / eine ganz andere Klasse ändern. Dies sollte kein Problem in Ihrem Fall sein.

Siehe meine Antwort hier

Siehe JAXB Blogbeitrag des Autors

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top