XMLGregorianCalendar <-> Java

mtk-flo

Erfahrenes Mitglied
Wie erstelle ich einen XMLGregorianCalendar Typ ?
Ich will in ein XML ein Datum speichern.

Ich habe mir aus dem XML Schema ein Klassenmodel erstellen lassen (JAXB) und nun möchte ich in meinem XML ein Datum speichern.
Bekomm aber keinen XMLGregorianCalendar-Typ hin...

Kann mir jemand helfen ?
 
Hallo,

ich habe das gleiche Problem.

Ich habe versucht ein Objekt vom Typ GregorianCalendar anzulegen. Gibt es jetzt die Möglichkeit dieses Objekt in ein XMLGregorianCalendar zu wandeln?

Gruß KlaDi.

[EDIT] Hab die Lösug gefunden. Ich leg mir einfach gleich ein Objekt vom Typ XMLGregorianCalendar an und setze dann Tag, Monat und Jahr einzeln.

[EDIT2]ich jetzt zwar mit:
Code:
 XMLGregorianCalendar datum = null;
ein Objekt, aber wenn ich einen Wert zuweisen will mit
Code:
datum.setDay(10);
geschieht das nicht. Mein Programm bricht einfach ohne Fehlermeldung ab.
Weiß vielleicht jemand woran das liegt?

Gruß KlaDi.
 
Zuletzt bearbeitet:
Du hast ja date auch nur deklariert
Java:
XMLGregorianCalendar datum = null;

Damit hast du aber kein Objekt.
Java:
datum.setDay(10);

ist also bei dir dann ein
Java:
null.setDay(10);

Was zu einer NullPointerException führt.
 
Hallo,

und wie erzeuge ich dann ein Objekt? So das ich die Werte Tag, Monat und Jahr setzen kann?

Gruß KlaDi.
 
Einfach mal die Doku lesen. Die sagt zum Konstruktor von XMLGregorianCalendar:
Default no-arg constructor.

Note: Always use the DatatypeFactory to construct an instance of XMLGregorianCalendar. The constructor on this class cannot be guaranteed to produce an object with a consistent state and may be removed in the future.

Also:
Java:
DatatypeFactory.newXMLGregorianCalendar

mit diverser Auswahl an Übergabeparametern.
 
Hmm,

ich hab die jetzt schon mehrfach in die API geschaut, aber die Notiz habe ich leider nirgendwo...

und
Code:
DatatypeFactory.XMLGregorianCalendar();
bringt bei mir den Fehler Cannot make a static reference to the non-static method.....

Sorry, irgendwie stehe ich gerade auf dem Schlauch.

Vielen Dank auf jeden Fall!
 
Zurück