blob: e02bc157dd37aae4295820c7f7c7a15b85566888 [file] [log] [blame]
Apache CXF 2.4.6 Release Notes
1. Overview
The 2.4.x versions of Apache CXF are significant new versions of CXF
that provides several new features and enhancements.
New features include:
* Log Browser Console - see the logbrowser sample for an example
* Transformation feature provides for a fast and effective way to transform inbound
and/or outbound XML messages, please see the TransformationFeature page for more
information.
* JIBX databinding
* Faster startup and reduced spring configuration. The Spring support has been redone
to be based on the ExtensionManagerBus. This results in much faster startup. It also
means that all of the imports of META-INF/cxf/cxf-extension-*.xml are no longer
needed and are deprecated. Additionaly, all features are now available when
using the ExtensionManager Bus instead of being forced to use Spring.
* WSS4J has been updated from 1.5.x to 1.6. See http://ws.apache.org/wss4j/wss4j16.html
for the list of new features and upgrade notes for Apache WSS4J 1.6. Some notable new
features for CXF users include:
* SAML2 support: WSS4J 1.6 includes full support for creating, manipulating and
parsing SAML2 assertions, via the Opensaml2 library. See
http://coheigea.blogspot.com/2011/02/support-for-saml2-assertions-in-wss4j.html
for more information.
* Performance work: A general code-rewrite has been done with a focus on improving
performance.
* Support for Crypto trust-stores: WSS4J 1.6 separates the concept of keystore and
truststores. See http://coheigea.blogspot.com/2011/01/wss4j-16-crypto-property-change.html
for more information.
* WS-SecurityPolicy support for SAML tokens.
* Initial OSGi Blueprint support for JAX-WS and JAX-RS
* A simple framework for building an STS was added to CXF's WS-Security module. See the
sts_issue_operation sample to see this being used to generate SAML tokens based on X509
certs used for the authentication.
Users are encourage to review the migration guide at:
http://cxf.apache.org/docs/24-migration-guide.html
for further information and requirements for upgrading to 2.4.0. In particular, the upgrades
to WSS4J and Neethi will require some migration work if you use the WSS4J API's directly or
have created your own Policy objects or builders. Additionally, XmlSchema was update to 2.0
so any custom Aegis types may need to be updated.
2.4.6 fixes over 25 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 Maven 2.2.1 or 3.x
* Some samples can be built with Apache Ant 1.6 or later
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/24-migration-guide.html
for caveats when upgrading from CXF 2.3.x to 2.4.x.
7. Specific issues, features, and improvements fixed in this version
** Bug
* [CXF-3976] - SoapTransportFactory.getConduit(EndpointInfo ei, EndpointReferenceType target) ignores second parameter
* [CXF-3981] - WS-Addressing related faults do not contain addressing headers
* [CXF-3984] - Impossible to handle Locale parameters with country qualifiers
* [CXF-3986] - Update MessageContext.getContextualProperty to check Exchange if the property is of type Class
* [CXF-3989] - messageConetxt.setScope(MessageContext.HTTP_REQUEST_HEADERS, Scope.APPLICATION) leads to java.lang.IllegalArgumentException
* [CXF-3991] - Address information should be added to error message if conduit is not found
* [CXF-3993] - WS-RM's blueprint configuration fails to parse RMAssertion entries
* [CXF-4007] - Jetty threading parameters doesn't setup threadpool properly
* [CXF-4012] - The AlgorithmSuite class does not use the WS-SP standard maximum symmetric key size
* [CXF-4015] - wadl2java: xs:integer param is generated as invalid type
* [CXF-4016] - JAX-WS schema generation of an Exception annoted with @WebFault that contains a property of a class annotated with @XmlRootElement causes the schema of the WSDL to generate the incorrectly
* [CXF-4017] - SchemaCollection.addCrossImports handles only XmlSchemaSequence instead of all XmlSchemaGroupParticle
* [CXF-4018] - JAX-WS Providers created from class (instead of an actual instance bean) do not get the JAXWSMethodInvoker
* [CXF-4027] - Aegis BeanType does not ignore super type of java.lang.Enum
* [CXF-4031] - NullPoint Exception Raised when input is nothing and using Holder to return response
* [CXF-4036] - JAXBContextInitializer ignores some javax.xml.bind Annotations
* [CXF-4037] - Problem creating dynamic client when WSDL is hosted with secured transport (https)
* [CXF-4042] - When generating schema/wsdl, schemaLocations provided via @XmlSchema are dropped
* [CXF-4043] - JSONProvider can not get a custom prefix set for a collection wrapper element
* [CXF-4044] - ensure publishedEndpointUrl property could be set to endpoint
* [CXF-4045] - BusFactory does not catch NoClassDefFoundError
** Improvement
* [CXF-3979] - specify cxf-bundle start-level less than 60
* [CXF-3988] - org.apache.cxf.jaxrs.ext.multipart.Attachment object should be mutable
* [CXF-3990] - Change scope for EffectivePolicyImpl.initilise() and EndpointPolicyImpl.initilise() to more permissive
* [CXF-3996] - Extend POLICY_OVERRIDE property to service IN
* [CXF-4000] - Update JSONProvider to get the response optionally formatted
* [CXF-4033] - Interceptor and Features annotations require context classloader
* [CXF-4039] - If the wsdlLocation is not a valid URL, you class.getResource(...)
** Task
* [CXF-3999] - Update Jettison version to 1.3.1