With a JAXB customization, you can add adapters that would call off to custom print/parse methods for the dateTime stuff.

Dan




On Jul 30, 2008, at 9:14 AM, Maciej Kwiecien wrote:

Hello All,

First of all, I know my question is related rather to JAXB than CXF - anyway I hope that someone who reads this mailing list would have enough knowledge
and would be kind enough to help me ;-)

Web Service WSDL contains type definition as follows:

<xs:complexType name="JourneyDateTimeType">
         <xs:sequence>
           <xs:element name="DateTimeBandStart" type="xs:dateTime"/>
           <xs:element name="DateTimeBandEnd" type="xs:dateTime"
default="0001-01-01T00:00:00" minOccurs="0"/>
        </xs:sequence>
   </xs:complexType>



Those two elements DateTimeBandStar and DateTimeBandEnd are mapped by
wsdl2java  to

@XmlSchemaType(name = "dateTime")
   protected XMLGregorianCalendar dateTimeBandStart;

@XmlElement(name = "DateTimeBandEnd", required = true)
   @XmlSchemaType(name = "dateTime")
   protected XMLGregorianCalendar dateTimeBandEnd;


The problem occurs where my request XML  contains following value:
<ns2:DateTimeBandStart>2008-08-20T08:55:00.0000000-00:00</ ns2:DateTimeBandStart>


After unmarshaling this timestamp is equal to: 2008-08-20T08:55:00E-7Z

Web service rejects request with such datetime  format - it requires
2008-08-20T08:55:00.0000000-00:00

Is there anyway to configure JAXB to handle required by web service datetime
format?

As always any help will be appreciated.

Regards,
Maciej

---
Daniel Kulp
[EMAIL PROTECTED]
http://www.dankulp.com/blog




Reply via email to