Hi finally, i found a way to do what i want,
the option is described in wsdl2java and not cxf-codegen-plugin and the
option is -dns false (using two lines of <extraaarg>).

So the solution is :
<configuration>
<sourceRoot>${project.build.directory}/generated-sources/cxf</sourceRoot>
              <defaultOptions>
                <noAddressBinding>true</noAddressBinding>
              </defaultOptions>
              <wsdlOptions>
                <wsdlOption>
                  <wsdl>mywsdl.wsdl</wsdl>
                  <extraargs>
                    <extraarg>-dns</extraarg>
                    <extraarg>false</extraarg>
                </extraargs>
</configuration>

Regards
Hervé

On Fri, Apr 20, 2012 at 1:21 PM, Hervé BARRAULT <[email protected]>wrote:

> Hi,
> concerning the same problem,
>
> Is it possible with options in cxf-codegen-plugin
> to not use the default : javax.xml.ws.wsaddressing.W3CEndpointReference
> nor the old cxf one : org.apache.cxf.ws.addressing.EndpointReferenceType
>
> I know how to do the first step (using
> <noAddressBinding>true</noAddressBinding>)
> but don't find how to do the second one.
>
> I have tried to use a binding.xml file (using
> <bindingFiles>
>
> <bindingFile>${basedir}/src/main/resources/jaxws-binding.xml</bindingFile>
> </bindingFiles>) but without success.
>
> How can i use my own generated files for WS-Addressing (being able to put
> it in an independent package would be better) ?
>
> Regards
> Hervé
>
>
>
>
>
>
>
>
> On Thu, Apr 19, 2012 at 12:48 PM, Hervé BARRAULT <[email protected]
> > wrote:
>
>> Hi, as i am using the package fuse-esb, i load the bundle cxf-bundle)
>> which already include org.apache.cxf.ws.addressing.EndpointReferenceType
>>
>> I guess, on unmarshalling, JaxB will use the one provided by the
>> cxf-bundle and not mine.
>>
>> Is anyone have an idea on how to deal with this problem ?
>> I am looking to Import-Package and Export-Package with version in OSGI.
>>
>> Regards
>>
>>
>>
>>
>> On Thu, Apr 19, 2012 at 10:25 AM, Hervé BARRAULT <
>> [email protected]> wrote:
>>
>>> HI,
>>> i have used the cxf-codegen-plugin to generate JaxB objects.
>>>
>>> With default generation, one of my element is defined as
>>> "javax.xml.ws.wsaddressing.W3CEndpointReference"
>>> As this class is not serializable and not simple tu use i have set an
>>> option to use the cxf addressing.
>>>
>>> I used the following options :
>>> <defaultOptions>
>>>   <bindingFiles>
>>>
>>> <bindingFile>${basedir}/src/main/resources/jaxws-binding.xml</bindingFile>
>>>   </bindingFiles>
>>>   <noAddressBinding>true</noAddressBinding>
>>> </defaultOptions
>>>
>>> In my jaxws-binding.xml i force the generation to be serializable (i
>>> need it).
>>>
>>>
>>> I have the following generated class :
>>>
>>> package org.apache.cxf.ws.addressing;
>>>
>>> ...
>>> public class EndpointReferenceType
>>>     implements Serializable {
>>>         private final static long serialVersionUID = 42L;
>>>        @XmlElement(name = "Address", required = true)
>>>         protected AttributedURIType address;
>>>         @XmlElement(name = "ReferenceParameters")
>>>         protected ReferenceParametersType referenceParameters;
>>>         @XmlElement(name = "Metadata")
>>>         protected MetadataType metadata;
>>>         @XmlAnyElement(lax = true)
>>>         protected List<Object> any;
>>>         @XmlAnyAttribute
>>>         private Map<QName, String> otherAttributes = new HashMap<QName,
>>> String>();
>>>
>>>         ...
>>> }
>>>
>>> So I expect that org.apache.cxf.ws.addressing.EndpointReferenceType is
>>> serializable.
>>>
>>> But when i try to serialize it, i have the following error :
>>> java.io.NotSerializableException:
>>> org.apache.cxf.ws.addressing.EndpointReferenceType
>>>         at
>>> java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1164)
>>>         at
>>> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1518)
>>>         at
>>> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1483)
>>>         at
>>> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1400)
>>>         at
>>> java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1158)
>>>         at
>>> java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:330)
>>>         at java.util.ArrayList.writeObject(ArrayList.java:570)
>>>
>>> Looking to stack trace i suppose that the List<Object> any is the
>>> problem.
>>>
>>> How can i resolve this ?
>>>
>>> Thanks for answers
>>>
>>> Regards
>>>
>>> Hervé
>>>
>>>
>>>
>>
>

Reply via email to