[
https://issues.apache.org/jira/browse/CXF-2429?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12757180#action_12757180
]
Michael Klimiuk commented on CXF-2429:
--------------------------------------
Thanks for the reply, Daniel
My workaround solution is something like your 2nd and 3rd points.
In our case:
- the simple front-end is used;
- XmlBeans databinding is used;
- and WSDL location is not specified, so the service will be "built from the
class".
The following patch is applied on generated artifacts:
- the annotations are removed from the generated web service interface (just to
disable warnings when using ReflectionServiceFactoryBean);
- the most important change in XXXService class is:
public MyPortInterface createPort(String address) {
ClientProxyFactoryBean factory = new ClientProxyFactoryBean();
factory.setServiceClass(MyPortInterface.class);
factory.setDataBinding(new XmlBeansDataBinding());
factory.setBindingId(BINDING_ID);
factory.setEndpointName(PORT_NAME);
factory.setServiceName(SERVICE);
factory.setAddress(address);
return (MyPortInterface) factory.create();
}
After that the XXXClass is actually not an extension of javax.xml.ws.Service,
because we need only generated SERVICE and PORT_NAME Qname values in the
inserted method.
> wsdl2java tool generates client stub which always uses default (JAXB)
> databinding while another one style is specified in the command line (-db
> argument)
> ---------------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: CXF-2429
> URL: https://issues.apache.org/jira/browse/CXF-2429
> Project: CXF
> Issue Type: Bug
> Components: Tooling
> Affects Versions: 2.1.6, 2.2.3
> Environment: the issue is not environment related
> Reporter: Michael Klimiuk
>
> SCENARIO:
> The following ant task is executed to generate client artifacts:
> <java classname="org.apache.cxf.tools.wsdlto.WSDLToJava" fork="true">
> <arg value="-client" />
> <arg value="-db" />
> <arg value="xmlbeans" />
> <arg value="-d" />
> <arg value="${gen.dir}" />
> <arg value="${wsdl.file}" />
> <classpath>
> <path refid="ws.classpath" />
> </classpath>
> </java>
> ACTUAL RESULT:
> Generated class XXXService.java uses default databinding style (JAXB) for
> creation of a service client while the XmlBeans style is specified.
> Furthermore, the databinding style cannot even be changed programmatically
> using available interfaces.
> EXPECTED RESULT:
> Generated class XXXService.java must use the specified databinding style for
> creation of a service client.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.