If you throw a package-info.java in there, you MAY be able to annotate the package with an @XmlJavaTypeAdapaters annotation, but I'm honestly not even sure that would work. Kind of a complex JAXB thing. Don't really know.
Dan On Dec 6, 2012, at 4:44 PM, Barry Hathaway <[email protected]> wrote: > I upgraded to CXF 2.7.0 and verified that the binding file is being used. > The adapter classes are > generated correctly; however, they see to only go into effect when an > @XmlJavaTypeAdapter > annotation is included in the class. The normal codegen-plugin does not > apply that annotation > when the type is an Object[][]. How do I tell my CXF client that the Object > array MAY contain > dates that should be converted to Calendars? Thanks. > > Barry > > On 12/4/2012 11:11 PM, Freeman Fang wrote: >> Hi, >> >> Yep, most likely your binding file not get picked up. >> Please take a look at a related discussion[1]. >> If you use cxf-codegen-plugin to specify the binding file, you should use >> sthing like >> <wsdlOption> >> >> <wsdl>src/main/resources/wsdl/your.wsdl</wsdl> >> <bindingFiles> >> >> <bindingFile>src/main/resources/wsdl/your.xjb</bindingFile> >> </bindingFiles> >> </wsdlOption> >> >> [1]http://cxf.547215.n5.nabble.com/Date-format-issue-with-cxf-codegen-2-5-0-td5712487.html >> >> ------------- >> Freeman(Yue) Fang >> >> Red Hat, Inc. >> FuseSource is now part of Red Hat >> Web: http://fusesource.com | http://www.redhat.com/ >> Twitter: freemanfang >> Blog: http://freemanfang.blogspot.com >> http://blog.sina.com.cn/u/1473905042 >> weibo: http://weibo.com/u/1473905042 >> >> On 2012-12-5, at 上午5:40, Barry Hathaway wrote: >> >>> I'd like to have CXF unmarshal dates to java.util.Calendar, but I'm not >>> sure how to do it. >>> The dates may be contained in Object[][] array as in: >>> >>> public class QueryResultSetServer { >>> >>> private Object[] columnNames; >>> private Object[][] resultSet; >>> >>> ...getters and setters >>> } >>> >>> I've specified a binding.xml file of: >>> >>> <jaxws:bindings wsdlLocation="SadlService.wsdl" >>> xmlns:jaxws="http://java.sun.com/xml/ns/jaxws" >>> xmlns:xs="http://www.w3.org/2001/XMLSchema" >>> xmlns:jxb="http://java.sun.com/xml/ns/jaxb" >>> xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"> >>> <jaxws:bindings >>> node="wsdl:definitions/wsdl:types/xs:schema[@targetNamespace='http://sadlserver.sadl.research.ge.com']"> >>> <jxb:globalBindings> >>> <jxb:javaType name="java.util.Calendar" xmlType="xs:dateTime" >>> parseMethod="javax.xml.bind.DatatypeConverter.parseDateTime" >>> printMethod="javax.xml.bind.DatatypeConverter.printDateTime"/> >>> <jxb:javaType name="java.util.Calendar" xmlType="xs:date" >>> parseMethod="javax.xml.bind.DatatypeConverter.parseDate" >>> printMethod="javax.xml.bind.DatatypeConverter.printDate"/> >>> </jxb:globalBindings> >>> </jaxws:bindings> >>> </jaxws:bindings> >>> >>> however, when I generate the classes the adapters do not seem to be used. >>> As a result when the dates get unmarshalled they are of the class: >>> org.apache.xerces.jaxp.datatype.XMLGregorianCalendarImpl >>> >>> Any suggestions? >>> Thanks in advance. >>> >>> Barry Hathaway >>> >> > > -- Daniel Kulp [email protected] - http://dankulp.com/blog Talend Community Coder - http://coders.talend.com
