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

Reply via email to