Apache CXF 3.0.10 Release Notes

1. Overview

The 3.0.x series of Apache CXF is a significant new version of CXF 
that provides several new features and enhancements.  

New features include: 
Full JAX-RS 2.0 support
New streaming based WS-Security implementation
Bean Validation 1.1
Much easier feature configuration options for JAX-WS
New CXF code generator frontend
Enhanced Reliable-Messaging 1.1 support

As part of the 3.0 refactoring, the runtime has been made smaller, 
many API’s have changed or where relocated, much duplicate 
functionality has been removed, etc…  Thus, 3.0 is not completely
compatible with CXF 2.x and some migration efforts may be required.

Users are encourage to review the migration guide at:
http://cxf.apache.org/docs/30-migration-guide.html
for further information and requirements for upgrading from 2.7.x.

3.0.10 fixes over 42 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 6 Development Kit
    * Apache Maven 3.x to build the samples


3.  Integrating CXF Into Your 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/30-migration-guide.html
for caveats when upgrading from CXF 2.7.x to 3.0.0


7. Specific issues, features, and improvements fixed in this version


** Bug
    * [CXF-6463] - AbstractHTTPDestination.cacheInput() throws NullPointerException if HttpServletRequest returns null for getInputStream()
    * [CXF-6510] - LoggingOutInterceptor: formatLoggingMessage method is not used in every case
    * [CXF-6646] - CXF 3.x WSRM message may not be retrieved from database
    * [CXF-6729] -  Version 1 NewCookie is not compliant with RFC 2109
    * [CXF-6842] - Unwrap exception nested with WebApplicationException
    * [CXF-6845] - Some methods in MessageUtils prone to NPE
    * [CXF-6850] - javax.ws.rs.core.Request implementation doesn't match Accept-Encoding: *  for  any encoding value
    * [CXF-6851] - JAXRS 2 Feature not supported on server side?
    * [CXF-6854] - Application subclass can't be injected into an application lass field
    * [CXF-6855] - ElementClass annotation is ignored on JAX-RS service interface when generating the WADL
    * [CXF-6867] - Envelope and Body element prefixes changed when processing messages without headers
    * [CXF-6868] - empty Authorization header result in server error
    * [CXF-6878] - Protect against other exception during consuming left-over data
    * [CXF-6883] - Crypto caching issues in the WS-Security code
    * [CXF-6884] - Don't include Signature/EncryptedKey Elements if there are no references to be signed/encrypted
    * [CXF-6886] - CXF 3.x WSRM attachments are not retransmitted
    * [CXF-6890] - "afirmative" is mispelled in debug output
    * [CXF-6891] - IOUtils.isEmpty() doesn't reinclude byte in stream.
    * [CXF-6901] - UriBuilder may lose resolved query templates
    * [CXF-6906] - UriBuilder ignores a query component if URI contains templates
    * [CXF-6917] - SuperClass and Interface's Annotations are ignored when the Method contains ParameterAnnotation
    * [CXF-6923] - org.omg.CORBA.TIMEOUT is not handled with Jacorb implementation
    * [CXF-6927] - check if msv is available in Stax2ValidationUtils to avoid the NCDFE when use IBM JDK
    * [CXF-6933] - WadlGenerator doesn't honor multiple Descriptions for same DocTarget
    * [CXF-6943] - Dead lock on Async Response when timeout is set
    * [CXF-6948] - WebClient may cause JMX CounterRepository OOM if a request URI varies a lot  
    * [CXF-6957] - JAX-RS: ExceptionMapper not called for Fault
    * [CXF-6966] - Using CXF in JDK endorsed dir as JAX-WS impl crashes
    * [CXF-6967] - Content Disposition filename should be case-insensitive
    * [CXF-6970] - HTTP response headers are always set with HttpServletResponse.addHeader

** Improvement
    * [CXF-6875] - Update Apache Mina from 2.0.9 to 2.0.13
    * [CXF-6877] - Have @SchemaValidation working on service endpoint implementation class method
    * [CXF-6903] - add a NameDigestPasswordCallbackHandler for JAASLoginInterceptor
    * [CXF-6910] - don't need setSocketTimeout when create ahc RequestConfig
    * [CXF-6912] - introduce CONNECTION_MAX_IDLE property for AHC
    * [CXF-6918] - Print the XMLInputFactory implementation class when throwing "Cannot create a secure XMLInputFactory"
    * [CXF-6935] - Better error message than java.lang.NullPointerException - org.apache.cxf.common.util.Compiler.useJava6Compiler(Compiler.java:187) when running on a JRE instead of JDK
    * [CXF-6949] - Add support to the ReceivedTokenCalbackHandler to return a transformed token

** Task
    * [CXF-6853] - Support encoded value in @ApplicationPath
    * [CXF-6858] - Upgrade Xalan bundle to 2.7.2_3
    * [CXF-6895] - Create DOM4JProvider test reading an XML sequence with BOM
    * [CXF-6938] - Setting the providers on a bus causes a leak if this bus is used by per-request clients
    * [CXF-6971] - Update Jettison version to 1.3.8



