2014-10-07 4 views
0

я использую следующий код, чтобы прочитать мой XML с помощью XSTREAMXStream FromXml метка времени проблема

XStream xStream = new XStream(new DomDriver()); 
xStream.processAnnotations(Class.forName(requestType)); 
Object reqInfo = null; 
reqInfo = xStream.fromXML(testCaseData.getRequest()); 

код работает для других XMLs. Когда я дать метку времени в качестве входных данных, я получаю следующее сообщение об ошибке:

Cannot construct javax.xml.datatype.XMLGregorianCalendar : null : Cannot construct javax.xml.datatype.XMLGregorianCalendar : null 

message    : Cannot construct javax.xml.datatype.XMLGregorianCalendar : null 
cause-exception  : com.thoughtworks.xstream.converters.reflection.ObjectAccessException 
cause-message  : Cannot construct javax.xml.datatype.XMLGregorianCalendar : null 

Я попытался дать несколько форматов времени, но до сих пор я получаю ту же ошибку. пожалуйста помоги.

<GeXXXRequest>    
      <client> 
       <clientId>111</clientId> 
       <appservername>111</appservername> 
       <apptimestamp>2004-02-22 15:16:04.0 UTC</apptimestamp> 
      </client> 
</GeXXXRequest> 

ответ

0

В XML, ваша временная метка должна соответствовать формату ISO 8601 см ссылку.

В вашем случае «2004-02-22T15: 16: 04.0 + 00: 00» должно работать.

+0

Я пробовал 2004-02-22T15: 16: 04.0 + 00: 00. Тем не менее я получаю ту же ошибку. – srinath

+0

делает '2004-02-22T15: 16: 04Z' работа? – marty

+0

Нет. Даже «2004-02-22T15: 16: 04Z» не работает. – srinath