XMLBeans – Java XML Databinding

XMLBeans ist eine Open Source API zum Auslesen und Erzeugen von XML Dateien, die in einem XML Schema beschrieben sind. XMLBeans generiert Java Klassen aus dem Schema mit denen man Dateien bearbeiten kann.

Zum Generieren enthält XMLBeans das Kommandozeilenwerkzeug scomp. Der Aufruf

scomp -out abruf.xsd.jar -src ./src ./abruf.xsd

generiert aus dem Schema abruf.xsd Klassen und packt sie in ein Jar. Der Quellcode der Klassen kann durch den Parameter -src in ein Verzeichnis gespeichert werden.
Das Lesen von Daten aus einer Datei ist einfach. Für jedes Element aus dem Schema gibt es Getter und Setter:

VertragDocument vertragXml = VertragDocument.Factory.parse( xmlDatei );
String vertragNummer = vertragXml.getVertrag().getAbruf().getKopfdaten().getVertragsnummer();

liest das Element Vertragsnummer aus einer Datei.
Gespeichert werden Dateien durch Aufruf von:

StammdatenDocument doc = ...
...
XmlOptions opts = new XmlOptions();
opts.setSavePrettyPrint();
opts.setSavePrettyPrintIndent(4);
opts.setCharacterEncoding("UTF-8");
opts.setDocumentType(doc.schemaType());
PrintStream destStream = new PrintStream(new FileOutputStream(dateiName), false, "UTF-8");
doc.save(destStream,opts);
destStream.close();

Durch XMLBeans ist das Bearbeiten einer XML-Datei so einfach wie das Erzeugen eines einfachen Java-Bean. Wenn sich das Schema einmal ändert, muss nur neu generieren. In der IDE bemerkt man sofort die Stellen im Code, die man anpassen muss.

  1. No trackbacks yet.

Schreibe einen Kommentar

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s

%d Bloggern gefällt das: