2014-05-16 5 views
1

Этот вопрос связан с: XmlBeans XmlDateTime format without timezone infoXMLBeans даты без указания часового пояса

Но мне нужно напечатать дату в XMLBeans без какой-либо информации часового пояса. То, что я прочитал от World Wide Web консорциума:

А «дата объект» объект с год, месяц и день свойств просто как у объектов DATETIME, плюс необязательный часовой пояс многозначных часовой пояс свойство

http://www.w3.org/TR/xmlschema-2/#date

Ключевое слово необязательно. Мне нужно удалить его из поведения по умолчанию XMLBeans.

То, что я пробовал:

XmlDateTime xmlDateTime = XmlDateTime.Factory.newInstance(); 
xmlDateTime.setCalendarValue(new GregorianCalendar()); 
GDateBuilder gdb = new GDateBuilder(xmlDateTime.getDateValue()); 
gdb.normalize(); 
xmlDateTime.setGDateValue(gdb.toGDate()); 
instruction.setReqdExctnDt(gdb.getCalendar()); 
CBIPartyIdentification4 partyId = CBIPartyIdentification4.Factory.newInstance(); 

Что я получаю 2014-05-16Z то, что мне нужно 2014-05-16.

Как я могу это сделать?

ответ

1

Используйте класс XmlCalendar, который не будет добавлять информацию о часовом поясе:

XmlDateTime xmlDateTime = XmlDateTime.Factory.newInstance(); 
Calendar xmlCalendar = new XmlCalendar(); 
xmlCalendar.set(Calendar.YEAR, 2014); 
xmlCalendar.set(Calendar.MONTH, 2); 
xmlCalendar.set(Calendar.DATE, 22); 
xmlDateTime.setCalendarValue(xmlCalendar); 
Смежные вопросы