# mehrere XML Files mit JaxB



## stormrider (28. Aug 2007)

ich würde gerne zwei (mehrere) XML Files mit Jaxb unmarshallen. 
D.h. zur Zeit mache ich:
o = unmarshaller.unmarshal(new FileInputStream(properties.getProperty("file.xml")));	

und verwende danach o weiter. 
Jetzt möchte ich aber gerne, dass zwei Files in das eine Objekt o unmarshallen. Es sind zwei XMLs die dem gleichen Schema entsprechen.
geht das??


----------



## evil_one (28. Aug 2007)

Ich denke hier musste das mit einer Schleife machen.
Der Unmarshaller will zwar nur einen Stream haben aber ich würde trotzdem jede Datei einzeln einlesen.


----------



## stormrider (29. Aug 2007)

das Problem ist, dass die XML files gleich aussehen, also
1. File:
<entries>
    <entry>
        ...
    </entry>
    <entry>
        ...
    </entry>
</entries>
und das 2. File ebenfalls
<entries>
    <entry>
        ...
    </entry> 
    <entry>
        ...
    </entry>
</entries>

Das xsd erlaubt aber nur einen root, also entries, tag.
Habs jetzt so gelöst, dass ich beide files einlese, mit jdom alle entries aus dem zweiten file nehme und unter das erste hänge und dann an jaxb übergebe (das kombinierte einfach in einen Stream schreiben)
Etwas umstädnlich, aber es funktioniert.


----------



## Eirikur (16. Okt 2008)

Habe ein ähnliches Problem.

Möchte mehrere XML-files unmarshallen, teilweise auch unterschiedlichen XSDs zugehörig, das Ganze dann in einem Java-Objekt Baum ausgeben, diese Java-Objekte manipulieren und dann EIN xml-file ausgeben, bzw. marshallen.

Wie bekommt man sowas am besten hin?!


----------

