This Confluence has been LDAP enabled, if you are an ASF Committer, please use your LDAP Credentials to login. Any problems file an INFRA jira ticket please.

Child pages
  • XMLBeans
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Current »

Apache XMLBeans is another technology for mapping XML Schema to java objects. CXF added support for XMLBeans in 2.1. There are a two parts to the support for XMLBeans:

Code Generation

The wsdl2java tool now allows a "-db xmlbeans" flag to be added that will generate XMLBeans types for all the schema beans instead of the default JAXB beans. With 2.1 and 2.2, the types are generated, but you still need to configure the XMLBeans databinding to be used at runtime. With 2.3, the generated code contains an @Databinding annotation marking it as XMLBeans and the configuration is unnecessary.


You need to configure the runtime to tell it to use XMLBeans for the databinding instead of JAXB.

Spring config

For the server side, your spring configuration would contain something like:

<jaxws:server serviceClass="demo.hw.server.HelloWorld" address="/hello_world">
       <bean class="org.apache.cxf.xmlbeans.XmlBeansDataBinding" />


       <bean class="org.apache.cxf.xmlbeans.XmlBeansDataBinding" />

The client side is very similar:

<jaxws:client id="helloClient"
       <bean class="org.apache.cxf.xmlbeans.XmlBeansDataBinding" />


If using programmatic factory beans instead of spring configuration, the databinding can be set on the ClientProxyFactoryBean (and subclasses) and the ServerFactoryBean (and subclasses) via:

factory.getServiceFactory().setDataBinding(new org.apache.cxf.xmlbeans.XmlBeansDataBinding());
  • No labels