Я использую JAXB для un/marshaling XML-сообщений, которые я получаю с сервера. Обычно я получаю значения XMLGregorianCalendar в полях, которые относятся к xs: dateTime в описании XSD-файлов, поэтому преобразование в XMLGregorianCalendar выполняется автоматически JAXB.xs: String в xs: формат DateTime для XMLGregorianCalendar
Пример из файла XSD
<xs:attribute name="readouttime" use="required" type="xs:dateTime" />
Однако одно поле определяется как хз: строки, например так:
<xs:element minOccurs="1" maxOccurs="1" name="Value" type="xs:string" />
, но я получаю значение, которое должно представлять DateTime:
<Value>2014-08-31T15:00:00Z</Value>
Есть ли хороший способ, как преобразовать эту строку в XMLGregorianCallendar, или я должен использовать Sim pleDateFormat и введите шаблон вручную? Я чувствую, что это может быть опасной частью.
Я получил NullPointerException com.sun .xml.bind.api.AccessorException: java.lang.NullPointerException \t at com.sun.xml.bind.v2.runtime.XMLSerializer.reportError (XMLSerializer.java:247) \t at com.sun.xml.bind.v2.runtime.XMLSerializer.reportError (XMLSerializer.java:262) \t на com.sun.xml.bind.v2.runtime.ClassBeanInfoImpl.serializeAttributes (ClassBeanInfoImpl.java:390) \t в com.sun.xml.bind.v2.runtime.XMLSerializer.childAsXsiType (XMLSerializer.java:689) \t в com.sun.xml.bind.v2.runtime.property.SingleElementNodeProperty.serializeBody (SingleElementNodeProperty.java:158 – Aguid
@AyadiAkrem было бы лучше иметь дела сценарий для оценки XML, POJO и т.д. – Xstian
это то, что я сделал – Aguid