Ok, good to know. I can confirm that the latest JAXB implementation handles the XMLGregorianCalendar just fine.
Thanks Marc On Wed, 17 Nov 2010 13:59:57 +0800 Jim Ma <[email protected]> wrote: > Thanks Dan ! That is really some special thing for > XMLGregorianCalendar in JAXB to handle the things as JAXWS 2.2 TCK > expected. Good to know it has been fixed in the latest JAXB impl. > > Jim > > On Wed, Nov 17, 2010 at 7:39 AM, Daniel Kulp <[email protected]> wrote: > > On Tuesday 16 November 2010 5:40:52 pm Daniel Kulp wrote: > >> Honestly, I'm not sure. The code was added as part of: > >> > >> https://issues.apache.org/jira/browse/CXF-2868 > >> > >> but I'm not really sure why that doesn't work without the bridge. Jim? > > > > I added a test case for CXF-2868 and it seems to pass fine. Thus, it's > > likely that it was a bug in JAXB that is now fixed with the latest JAXB > > implementations. I'll revert out the change for CXF-2868. > > > > Dan > > > > > >> > >> Dan > >> > >> On Tuesday 16 November 2010 3:50:05 am Marc Giger wrote: > >> > Hi all, > >> > > >> > In the DataReaderImpl class (line ~131 - 150) you will find the following > >> > code: > >> > > >> > //The jaxb class contains XMLGregorianCalendar field also needs JAXB > >> > Bridge > >> > > >> > if (part != null && part.getTypeClass() != null) { > >> > > >> > boolean useJAXBBridge = false; > >> > for (Field field : part.getTypeClass().getDeclaredFields()) { > >> > > >> > if (field.getType().equals(XMLGregorianCalendar.class)) { > >> > > >> > useJAXBBridge = true; > >> > break; > >> > > >> > } > >> > > >> > } > >> > if (useJAXBBridge) { > >> > > >> > return > >> > > >> > JAXBEncoderDecoder.unmarshalWithBridge(part.getConcreteName(), > >> > part.getTypeClass(), part.getTypeClass().getAnnotations(), > >> > databinding.getContextClasses(), reader, getAttachmentUnmarshaller()); } > >> > > >> > } > >> > > >> > > >> > return JAXBEncoderDecoder.unmarshall(createUnmarshaller(), > >> > reader, > >> > > >> > part, unwrapJAXBElement); > >> > > >> > What is the reason to use a Bridge when a XMLGregorianCalendar is > >> > declared? > >> > > >> > If an operation has a xs:dateTime as parameter, the bridge will be used > >> > and no schema validation can be performed. > >> > > >> > Kind regards > >> > > >> > Marc > > > > -- > > Daniel Kulp > > [email protected] > > http://dankulp.com/blog > >
