Hi,
ich möchte aus einem Vector oder einer Liste, die verschiedene Objekte enthalten kann ein XML File per Jaxb generieren.
Ein Beispiel, das ich gefunden hab, macht das hier:
zu:
ABER: Wie macht man das ohne die XMLRootElement Tags, also mit normalen Element? Geht das überhaupt?
Also Bsp.
Also beliebige Objekte.
Wenn ich das Ausgeben lasse bekomme ich in etwa das hier:
Ich hätte das aber eben lieber wie oben, bzw. mit "richtigen" Knoten.
Wie mache ich das?
Gruß
Zirni
ich möchte aus einem Vector oder einer Liste, die verschiedene Objekte enthalten kann ein XML File per Jaxb generieren.
Ein Beispiel, das ich gefunden hab, macht das hier:
Code:
@XmlRootElement(name="target")
class Target {
// The presence of @XmlElementRef indicates that the XML
// element name will be derived from the @XmlRootElement
// annotation on the type (for e.g. "jar" for JarTask).
@XmlElementRef
List tasks;
}
abstract class Task {
}
@XmlRootElement(name="jar")
class JarTask extends Task {
...
}
@XmlRootElement(name="javac")
class JavacTask extends Task {
...
}
zu:
Code:
// mit
Target target = new Target();
target.tasks.add(new JarTask());
target.tasks.add(new JavacTask());
// ZU:
<target>
<jar>
....
</jar>
<javac>
....
</javac>
</target>
ABER: Wie macht man das ohne die XMLRootElement Tags, also mit normalen Element? Geht das überhaupt?
Also Bsp.
Code:
Vector mylist =new Vector();
mylist.add(new A());
mylist.add(new B());
mylist.add(new B());
mylist.add(new A());
//...
@XmlElementWrapper(name="liste")
public List getMylist() {};
Wenn ich das Ausgeben lasse bekomme ich in etwa das hier:
Code:
<liste>
<mylist xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="a" id="999">loses a_999</mylist>
<mylist xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="b">
<isbn>978-0060554736</isbn>
<name>The Game</name>
<author>Neil Strauss</author>
<publisher>Harpercollins</publisher>
</mylist>
<mylist xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="a" id="999">loses a_999</mylist>
<mylist xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="a" id="999">loses a_999</mylist>
<mylist xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="b">
<isbn>978-0060554736</isbn>
<name>The Game</name>
<author>Neil Strauss</author>
<publisher>Harpercollins</publisher>
</mylist>
</liste>
Ich hätte das aber eben lieber wie oben, bzw. mit "richtigen" Knoten.
Wie mache ich das?
Gruß
Zirni