API changes

Aegis

The building of the Schema in the Aegis type system has changed from using JDom to using XmlSchema directly. This avoids a 3 hop JDOM -> DOM -> XmlSchema performance penalty, but requires changes to any custom Aegis type objects.

The long deprecated org.codehaus.xfire.aegis.type.java5 annotations have been removed. When migrating apps from XFire, you will need to update to use the JAXB annotations or the equivalents in org.apache.cxf.aegis.type.java5.

JAX-RS

The JAX-RS runtime/api's have been updated to JAX-RS 1.0 level from 0.8. Some code written for 0.8 may need modifications to run with the 1.0 level.

Runtime changes

Policy engine

The Policy engine now defaults to on instead of off. Thus, if you are using WSDL that contains WS-Policy assertions, those assertions will now be evaluated by default. If you need to turn it off, update your config to include:

<cxf:bus>
    <cxf:features>
        <p:policies enabled="false"/>
    </cxf:features>
</cxf:bus>

Note: this only applies if the cxf-rt-policy module is available or if you use the full cxf bundle jar. If you are using the maven modules and don't bring in the cxf-rt-policy artifact, then the policy engine will not be available.

Config changes

JMS

The default value for the useJms11 flag has changed to true so CXF will use the JMS 1.1 API's when possible. If you are using a JMS 1.0 provider, you will need to adjust the configuration to set this to false to force the use of the 1.0 API's.

Tooling changes

Maven WSDL2Java plugin

The default location for the sourceRoot variable where the code is generated into is now "${project.build.directory}/generated-sources/cxf" to match the maven best practices for plugins.