Apache CXF 2.3.11 Release Notes 1. Overview The 2.3.x versions of Apache CXF are significant new versions of CXF that provides several new features and enhancements. Important note: 2.3.11 is the last planned release on the 2.3.x branch at Apache. Users are STRONGLY encouraged to upgrade to newer versions of CXF. New features include: * JAX-WS 2.2 Support * JAX-RS 1.1 Support * New annotations for Java first use cases to reduce the need for external configuration and provide more control over the runtime and generated WSDL: * @WSDLDocumentation annotation to add documentation nodes to generated wsdl * @SchemaValidation annotation to turn on schema validation * @DataBinding to set the databinding used (if other than JAXB) * @GZIP to turn on GZIP compression * @FastInfoset to turn on FastInfoset support * @Logging to turn on and control various Logging functionality * @EndpointProperty to configure endpoint properties * @Policy to associate WS-Policy documents with the service * SOAP/JMS spec implementation. While CXF has supported SOAP over JMS since 2.0, there wasn't a standard specification to describe how it should be done so different vendors did things differently and interoperability was impossible. The new SOAP/JMS specification support implements the new SOAP/JMS spec to achieve a higher degree of interoperability. The older SOAP/JMS configuration is still supported. WS-Addressing also now fully works with the JMS transport when used in conjunction with the SOAP/JMS spec implementation. * SDO databinding * Schema Validation support for Aegis Databinding if Woodstox 4 is used for the Stax parser 2.3.11 fixes over 20 JIRA issues reported by users and the community. 2. Installation Prerequisites Before installing Apache CXF, make sure the following products, with the specified versions, are installed on your system: * Java 5 Development Kit * Apache ant 1.6 2.1 Java 5 Development Kit You must install the J2SE Development Kit (JDK) 5.0, which can be downloaded from: http://java.sun.com/j2se/1.5.0/download.jsp After installing the JDK, set or modify the following environment variables: * JAVA_HOME -- set this environment variable to point at the root directory of the JDK 5.0 installation. * PATH -- make sure that your PATH includes: %JAVA_HOME%\bin (Windows) $JAVA_HOME/bin (UNIX) 2.2 Apache Ant 1.6.5 (or newer, 1.7.0 should work as well) To run samples included in the binary distribution of Apache CXF, you must install the Apache Ant 1.6.5 build utility, which can be downloaded from: http://ant.apache.org/bindownload.cgi After installing Apache Ant, add the /bin directory to your PATH. For more details, see the Installation Guide. 3. Integrating CXF Into You Application If you use Maven to build your application, you need merely add appropriate dependencies. See the pom.xml files in the samples. If you don't use Maven, you'll need to add one or more jars to your classpath. The file lib/WHICH_JARS should help you decide which jars you need. 4. Building the Samples Building the samples included in the binary distribution is easy. Change to the samples directory and follow the build instructions in the README.txt file included with each sample. 5. Reporting Problems If you have any problems or want to send feedback of any kind, please e-mail the CXF dev list, dev@cxf.apache.org. You can also file issues in JIRA at: http://issues.apache.org/jira/browse/CXF 6. Migration notes: See the migration guide at: http://cxf.apache.org/docs/23-migration-guide.html for caveats when upgrading from CXF 2.2.x to 2.3.x. 7. Specific issues, features, and improvements fixed in this version ** Bug * [CXF-4238] - Spring JAXRSClientFactoryBeanDefinitionParser reports a wrong factory bean class * [CXF-4243] - RequestImpl.selectVariant() using wrong headers * [CXF-4259] - JAX-RS Set-Cookie handler needs to ignore Expires property * [CXF-4265] - Potential NPE when Soap fault has no role * [CXF-4267] - A NPE in AttatchmentDataSource could be guarded. * [CXF-4269] - In some cases, the javascript client will not output the ns declaration for wrapper element of an rpc/lit method * [CXF-4277] - STSClient does not use returned KeyInfo size when creating a secret key * [CXF-4280] - case insensitive MetadataMap keyset * [CXF-4284] - Fix JAXB-based providers to report 400 for all read-related exceptions * [CXF-4288] - SecureAnnotationsInterceptor maps roles only based on method name * [CXF-4310] - WADLGenerator can not create QName when XMLRootElement has no name attribute and correctly manage schemas with empty namespaces * [CXF-4312] - JAX-WS clients set executor to a "thread per async request" version * [CXF-4313] - Hourly GC Caused by Framework - Unable to GC tune application if using framework. * [CXF-4334] - Schema validation does not validate elements in soap header * [CXF-4342] - NullPointerException in CachedOutputStream ** Improvement * [CXF-4257] - Should catch RejectedExecutionException in WS-Addr's rebaseReponse as done in OneWayProcessorInterceptor * [CXF-4326] - Remove the XPathFactory.newInstance from XPathUtils' constructor to improve the performance a bit * [CXF-4338] - config option to allow suppression of server version display in http response headers ** Test * [CXF-4126] - Can override built-in action on WSS4JOutInterceptor but seems impossible to add a new custom action on WSS4JOutInterceptor * [CXF-4335] - WSSecTest use some unecessary properties for WSS4JInterceptor configuration