Hallo an euch alle,
ich habe mir mithilfe von XMLBean (V2.0.0) aus einer XML Datei ein Schemata erzeugt und dann mithilfe von scomp entsprechende Java-Klassen bzw. daraus einen Jar-File für mein Projekt.
Jetzt habe ich als Test das Main-Programm unten aufgestellt und obigen Jar Datei eingebunden. Soweit so gut.
Jetzt zu meinem Problem:
Wenn ich im XML File
folgendes eintrage:
Funktioniert das einlesen mit obigen programm einwandfrei.
entferne ich im XML File "xmlns", dann erhalte ich folgende Fehlermeldung:
Was ich jetzt wissen möchte, ob man den Namespace des XML Files irgendwie mit XMLBeans setzen kann OHNE die XML Datei verändern zu müssen.
Ich XmlOptions (Doku, google. etc.) gefunden habe es aber bisher nicht hingekriegt, dass das dann auch läuft.
Kann mir vielleicht einer einen Tip geben?
Vielen Dank im Voraus.
MfG
Karl Heinz
ich habe mir mithilfe von XMLBean (V2.0.0) aus einer XML Datei ein Schemata erzeugt und dann mithilfe von scomp entsprechende Java-Klassen bzw. daraus einen Jar-File für mein Projekt.
Jetzt habe ich als Test das Main-Programm unten aufgestellt und obigen Jar Datei eingebunden. Soweit so gut.
Code:
File xmlFile = new File(args[0]);
LogDocument logDoc = null;
try {
logDoc = LogDocument.Factory.parse(xmlFile);
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
LogType log = logDoc.getLog();
LogentryType[] empArray = log.getLogentryArray();
for (int i = 0; i < empArray.length; i++)
{
System.out.println("Revision: " + empArray[i].getRevision() + " Date: " + empArray[i].getDate());
}
Jetzt zu meinem Problem:
Wenn ich im XML File
folgendes eintrage:
<log xmlns="http://soebes.com/subversion">
Funktioniert das einlesen mit obigen programm einwandfrei.
entferne ich im XML File "xmlns", dann erhalte ich folgende Fehlermeldung:
Code:
org.apache.xmlbeans.XmlException: D:\projekte\TestSVNXML\src\log.xml:0: error: The document is not a [email]log@http://soebes.com[/email]/subversion: document element namespace mismatch expected "http://soebes.com/subversion" got ""
at org.apache.xmlbeans.impl.store.Locale.verifyDocumentType(Locale.java:449)
at org.apache.xmlbeans.impl.store.Locale.autoTypeDocument(Locale.java:354)
at org.apache.xmlbeans.impl.store.Locale.parseToXmlObject(Locale.java:1270)
at org.apache.xmlbeans.impl.store.Locale.parseToXmlObject(Locale.java:1254)
at org.apache.xmlbeans.impl.schema.SchemaTypeLoaderBase.parse(SchemaTypeLoaderBase.java:345)
at org.apache.xmlbeans.impl.schema.SchemaTypeLoaderBase.parse(SchemaTypeLoaderBase.java:252)
at com.soebes.subversion.LogDocument$Factory.parse(Unknown Source)
at start.TestSVNXML.main(TestSVNXML.java:18)
java.lang.NullPointerException
at start.TestSVNXML.main(TestSVNXML.java:24)
Exception in thread "main"
Was ich jetzt wissen möchte, ob man den Namespace des XML Files irgendwie mit XMLBeans setzen kann OHNE die XML Datei verändern zu müssen.
Ich XmlOptions (Doku, google. etc.) gefunden habe es aber bisher nicht hingekriegt, dass das dann auch läuft.
Kann mir vielleicht einer einen Tip geben?
Vielen Dank im Voraus.
MfG
Karl Heinz