Hallo,
ich habe ein XML Schema das für verschiede XML Dateien steht.
Im Klartext: Die XSD steht für verschiedene Nachrichten Typen.
Zum Beispiel:
um nur 2 zu nennen.
Diese Nachrichten liegen nun in Form einer XML Datei in einem Verzeichnis.
Ich möchte nun jede Datei durchgehen und jede Datei in einen Objektbaum umwandeln.
Ich habe mir aus der XSD auch schon die Java Klassen gebaut.
1. Klasse NachrichtvonKundezumHaendler
2. Klasse NachrichtvonHaendlerzumKunde
Jetzt mein Problem beim Unmarshalling
Folgendes geht Ohne Probleme:
Und dies hier führt zur ClassCastException
Ich weiß doch aber vorher nicht was für ein Objekt ich erzeugen möchte. So kann ich im Quellcode auch nicht festlegen was für ein Objekt erzeugt werden soll.
Kann mir jemand sagen wie ich das allgemeingültig schreiben kann?
ich habe ein XML Schema das für verschiede XML Dateien steht.
Im Klartext: Die XSD steht für verschiedene Nachrichten Typen.
Zum Beispiel:
Nachricht von Kunde zum Händler
Nachricht von Händler zum Kunde
um nur 2 zu nennen.
Diese Nachrichten liegen nun in Form einer XML Datei in einem Verzeichnis.
Ich möchte nun jede Datei durchgehen und jede Datei in einen Objektbaum umwandeln.
Ich habe mir aus der XSD auch schon die Java Klassen gebaut.
1. Klasse NachrichtvonKundezumHaendler
2. Klasse NachrichtvonHaendlerzumKunde
Jetzt mein Problem beim Unmarshalling
Folgendes geht Ohne Probleme:
Code:
NachrichtvonKundezumHaendler nvkzh = (NachrichtvonKundezumHaendler) u.unmarshal(new File("20071011.xml"));
Und dies hier führt zur ClassCastException
Code:
JAXBContext jc = JAXBContext.newInstance( "com.acme.foo" );
Unmarshaller u = jc.createUnmarshaller();
Object o = u.unmarshal( new File( "nosferatu.xml" ) );
Ich weiß doch aber vorher nicht was für ein Objekt ich erzeugen möchte. So kann ich im Quellcode auch nicht festlegen was für ein Objekt erzeugt werden soll.
Kann mir jemand sagen wie ich das allgemeingültig schreiben kann?