Apache CXF 2.2.4 Release Notes

1. Overview
 
Apache CXF 2.2.4 delivers the third major version of 
the Celtix project (http://celtix.objectweb.org) and the XFire project
(http://xfire.codehaus.org) merge.  This release is a major update from 
the 2.1.x series.   The major new additions include:

 * WS-SecurityPolicy
 * WS-SecureConversation
 * Partial support for WS-Trust
 * Initial support for JAX-RS 1.0 (not TCK compliant yet) including a 
   client API for accessing REST services   

2.2.4 fixes over 50 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 or 6, 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 <AntInstallDir>/bin directory to your PATH.

For more details, see the Installation Guide.


3. 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.

4. 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


5. Migration notes:

See the migration guide at:
http://cxf.apache.org/22-migration-guide.html
for caveats when upgrading from CXF 2.1.x to 2.2.x.


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


** Bug
    * [CXF-2202] - Deploying REST service on CXF Transport for OSGi
    * [CXF-2226] - Incorrect libraries listed on the User's Guide in section detailing how to setup a simple JAX-WS service
    * [CXF-2301] - If a service is published with escaped address, it cannot be accessed from the service location in the WSDL.
    * [CXF-2308] - Invalid signature of cxf.apache.org/javadoc/latest/org/apache/cxf/ws/addressing/AddressingProperties.html#setTo
    * [CXF-2371] - WSSCTest fails with OutOfMemoryError with 64 bit jdk 5 on aix
    * [CXF-2373] - Couple of issues with fault handling in JaxRS/REST
    * [CXF-2374] - Handle possible number format exception when reading primitive param
    * [CXF-2380] - Cannot use custom client TLS settings when creating javax.xml.ws.Service from "https://...?wsdl" URL when WSDL contains https imports
    * [CXF-2381] - Attachments gone when in Multi-Threaded client
    * [CXF-2384] - SOAPFaultExcption thrown instead of a WebServiceException
    * [CXF-2390] - Enums using fromString() but jaxb creates fromValue()
    * [CXF-2398] - JMS Connections are not closed when JCA recycles CXF proxy
    * [CXF-2400] - NullPointerException with wsdl2js
    * [CXF-2401] - JAX-RS code doesn't have enough visibility into parameterized types to work 
    * [CXF-2402] - Aegis ignores mapping file attributes for services.
    * [CXF-2404] - remove reference to the <list> node when defining an interceptor
    * [CXF-2406] - HttpsToken RequireClientCertificate not working 
    * [CXF-2408] - JAX-RS ClientProxy does not properly test consume types when setting request headers
    * [CXF-2409] - ClientOutFaultObserver in ClientImpl not initialized (no callback on client code)
    * [CXF-2411] - ClassCastException when initializing JAXB Databinding based on WSDL
    * [CXF-2413] - Aegis ObjectType throws NullPointerException when reading value for an xs:any without xsi:type information
    * [CXF-2415] - Dynamic client returns a T when it should return a List<T>
    * [CXF-2417] - BeanTypeInfo does not ignore synthetic (bridge) methods to determine property types
    * [CXF-2418] - SchemaCollection throws StackOverflowError when schema contains circular reference
    * [CXF-2419] - WSDL2Java -allowElementReferences causes fatal errors in operation dispatching
    * [CXF-2421] - Get the UnsupportedOperationException when reinstalling a cxf related bundle in OSGi platform
    * [CXF-2425] - OSGi metadata does not handle well multiple versions of CXF bundle
    * [CXF-2429] - wsdl2java tool generates client stub which always uses default (JAXB) databinding while another one style is specified in the command line (-db argument)
    * [CXF-2431] - NullPointerException from wsdl2java with no explanation
    * [CXF-2432] - subscriptionDurable is commented in JMSFactory
    * [CXF-2436] - SEI should be able to implements java.rmi.Remote
    * [CXF-2440] - GZIP and MTOM attachments does not work on client
    * [CXF-2441] - http-conf.xsd causes validation error in cxf.xml
    * [CXF-2442] - fail to create a service model from class when: BARE parameter style, XmlBeans data binding, XmlBeans' source is WSDL file
    * [CXF-2444] - org.apache.cxf.service.model.InterfaceInfo attributes are not passed to the WSDL PortType during WSDL generation.
    * [CXF-2447] - Invalid paths used in CXF for the xml files results in failures in java 6
    * [CXF-2448] - IllegalArgumentException wrong number of arguments using CXF 2.2.3 in runtime test
    * [CXF-2451] - Unable to call no-arg methods when using implicit headers - getting params [null]
    * [CXF-2453] - Provider<DataSource>.invoke returning non-XML data causes error.
    * [CXF-2455] - Unable to disable schema validation in 2.2.4-SNAPSHOT
    * [CXF-2457] - MTOM byte arrays problem

** Improvement
    * [CXF-1459] - ClassCastException occurs on HTTPS web service call made by app deployed to BEA WebLogic 9.2
    * [CXF-2197] - Support PerRequest resource classes registered from Spring
    * [CXF-2270] - Attachments support in the RESTful client api
    * [CXF-2313] - Enhance CXFNonSpringJaxrsServlet
    * [CXF-2372] - Allow JMS XAResource to participate in J2EE transaction
    * [CXF-2375] - CXF treats synthetic methods as web methods. In the strict sense, this is not against the JAX-WS spec, but it causes issues with AspectJ instrumented classes.
    * [CXF-2397] - Make use of ControlledValidationXmlBeanDefinitionReader optional depending upon existence of FastInfoSet.jar
    * [CXF-2407] - WS-RM Connecting to Oracle
    * [CXF-2410] - Boolean getter plugin for xjc
    * [CXF-2416] - wsdl2java generates compiler warning
    * [CXF-2430] - Demo that would show how to set KeyStore and TrustStore would be nice
    * [CXF-2434] - Set JMSConfig's reconnectionOnException default value to be true  
    * [CXF-2449] - Spring Autowire by type doesn't work with jaxws:client
    * [CXF-2460] - Allow configuration of JaxWsClientFactoryBean during port creation

** New Feature
    * [CXF-2036] - Add option to retry a http request on socket error to http client
    * [CXF-2276] - Maven plugins: Support attaching generated WSDLs to the Maven build

** Task
    * [CXF-2424] - Fix problems in POMs

** Test
    * [CXF-1970] - A test for WS-Sec UsernameToken + encryption



