Apache CXF 2.2.5 Release Notes

1. Overview
 
Apache CXF 2.2.5 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.5 fixes over 88 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

Release Notes - CXF - Version 2.2.5


** Bug
    * [CXF-758] - Support POST with empty bodies in http-centric Client API
    * [CXF-806] - java2wsdl gives poor diagnosis of bad JAXB bean class
    * [CXF-1027] - Multiple bean files don't work in java2ws
    * [CXF-1148] - Scary INFO log entries in normal operation
    * [CXF-1159] - Remove FixedExtensionDeserializer once XmlSchema delivers their fix
    * [CXF-1266] - Nil value for nillable array element is default-constructed
    * [CXF-1277] - JAXB schema validation fails for RPC
    * [CXF-1282] - Can't set the excutor from JAXWS API
    * [CXF-1283] - Forking another thread to invoke the service implementation in ServiceInvokerInterceptor is not working
    * [CXF-1295] - Doc/Lit/Wrapped services fail schema validation at runtime with JAXB+JAX-WS
    * [CXF-1309] - Aegis databinding failed to createHolderType
    * [CXF-1500] - Very unhelpful error message for wsdl2java problem with documentation annotations
    * [CXF-1536] - When a SOAP request is submitted without an enclosing </soapenv:Envelope> a successful response is returned.  I would think that this should generate a parsing error/exception.
    * [CXF-1647] - Non-String Placeholders Fail to Validate
    * [CXF-1725] - Don't create empty <details/> elements in SOAP fault messages.
    * [CXF-1817] - wsdl2java RandomValueProvider gives StackOverflowException on bidirectional reference
    * [CXF-1824] - JCA inbound-mdb* samples can't be compiled out-of-the-box
    * [CXF-1850] - org.apache.cxf.endpoint.ServerImpl does not shut down destination in stop() when MultipleEndpointObserver is used.
    * [CXF-1871] - I tried to configure <jaxrs:serviceFactory> that ends in a java.lang.IndexOutOfBoundsException: Index: 0, Size: 0 during the jaxrs initialazion.
    * [CXF-1919] - Corba unit test demands unexpected count, perhaps working around XmlSchema bug
    * [CXF-1939] - WSDLToJava doesn't generate Service interface class, when wsdl has 2 services names that differ for an underscore
    * [CXF-2039] - -Dorg.apache.cxf.spring.validation.mode=VALIDATION_NONE has no effect
    * [CXF-2244] - Server accepts an unsigned message when the policy requires a signed message.
    * [CXF-2283] - Exposed Webservice disappear after a child spring app context closed
    * [CXF-2305] - PerformanceCounter.Client reports incorrect response times for oneway invocations
    * [CXF-2311] - client can't be used with different ws security users
    * [CXF-2320] - Problems using restful client api in ServiceMix JBI component
    * [CXF-2324] - HTTP Client ProxyServerPort shouldn't be an xs:int in the http-conf.xsd
    * [CXF-2339] - wsdl_first_dynamic_client example doesn't work for complex wsdl
    * [CXF-2368] - defaultOptions in cxf-codegen-plugin only works with wsdlRoot scanning
    * [CXF-2370] - Error while parsing authorization header in DigestAuthSupplier
    * [CXF-2437] - Host not set CXFJettySslSocketConnector
    * [CXF-2445] - can't pass mulitple -xjc wsdlOption in cxf-codegen-plugin
    * [CXF-2454] - <jaxws:client> does not support anonymous bean declaration
    * [CXF-2462] - CXF REST is not parsing the header value correctly if a comma is specified in a parameter value.
    * [CXF-2463] - SOAP 1.2 service return SOAP 1.2 Fault message in response to SOAP 1.1 request when exception is thrown
    * [CXF-2468] - attribute namespace is missed in out message in  case of XmlBeans data binding
    * [CXF-2470] - Invoke operation is incorrectly listed in Services List for JAX-WS Provider
    * [CXF-2471] - The HttpServletResponse statuses is lost after is set in a service implementation (where the response is injected through @Context).
    * [CXF-2473] - StaxDataBinding.write(Object, XMLStreamWriter) does not close an XMLStreamReader
    * [CXF-2474] - DocLiteralInInterceptor.handleMessage(Message) does not handle use case where message part is an XMLStreamReader
    * [CXF-2476] - NullpointerException when ServiceClass is not set on client
    * [CXF-2478] - Incorrectly removing a parameter from the Message
    * [CXF-2479] - Ommitting IncludeToken attribute results in exception
    * [CXF-2480] - TransportBinding with UsernameToken client not validating response
    * [CXF-2481] - Provider/Dispatch<SOAPMessage> adding "soap" prefix
    * [CXF-2483] - STSClient should look for operations from wsdl based on element name if action isn't found
    * [CXF-2487] - SecureConversationTokenFinderInterceptor stores the wrong token identifier
    * [CXF-2488] - Mangled error message for JAX-RS missing writer
    * [CXF-2489] - Exceptions are not properly handled by Performance.Counter MBean
    * [CXF-2490] - Wrong content type for JAX-RS errors
    * [CXF-2496] - WS-Addressing schema for the addressing feature missing the addressingRequired attribute
    * [CXF-2497] - No timeouts are set for HTTP wsdl retrieval
    * [CXF-2498] - Wrong parameter number exception with explicit soap headers
    * [CXF-2499] - (EffectivePolicyImpl/PolicyEngineImpl) Policy engine for ws security policy (based on wsdl attachment) fails to apply message level policies
    * [CXF-2502] - decoupled WS-A and WS-Sec does not result in faults back to clients
    * [CXF-2503] - ConcurrentModificationException thrown by AttachmentDeserializer
    * [CXF-2505] - Decoupled WS-A and PerformanceCounters result in double counting of invokations
    * [CXF-2508] - generation of absolute path in WSDL2Java
    * [CXF-2509] - java.lang.reflect.GenericSignatureFormatError within JAXBContextInitializer
    * [CXF-2510] - XMLBEANS_NAMESPACE_HACK alternative is missing in case of XmlBeans data binding
    * [CXF-2511] - The Soap11FaultOutInterceptor does not include the stacktrace even if FAULT_STACKTRACE_ENABLED is set
    * [CXF-2513] - env:Header's confuse generate Javascript
    * [CXF-2514] - Custom ContextResolver is not picked up for marshal/unmarshal calls for application/json and application/xml media types.
    * [CXF-2515] - catalog.cat in some modules is incorrect
    * [CXF-2516] - Schema resolution when Schemas in Jar separate from endpoint implementation
    * [CXF-2517] - Exception shouldn't be considered as JBI ERROR,should use JBI FAULT instead
    * [CXF-2520] - wrong handling in setNamespaceMap for AbstractDataBinding
    * [CXF-2522] - wsdl2java not honoring jaxws:parameter extension for wrapped elements
    * [CXF-2524] - STSClient requires Lifetime element in RSTR
    * [CXF-2525] - Bug in TokenStoreCallbackHandler
    * [CXF-2529] - processCookieParam only returns last cookie
    * [CXF-2533] - Content disposition values don't have their quotes stripped

** Improvement
    * [CXF-920] - Need system property for output client request and responses
    * [CXF-1087] - Spring control of jetty server
    * [CXF-1459] - ClassCastException occurs on HTTPS web service call made by app deployed to BEA WebLogic 9.2
    * [CXF-1706] - Aegis binding behaves differently than JAXB in regards to MTOM support
    * [CXF-1791] - Exception feedback
    * [CXF-2472] - if exception in fault handling, throw fault instead of processing exception
    * [CXF-2482] - Update JSON Provider to support Dojo JsonRestStore
    * [CXF-2484] - STSClient should allow configuring of interceptors
    * [CXF-2491] - Add TLS cert constraints support
    * [CXF-2501] - Detect if SLF4J is logging to Log4J and log to Log4J as well if it is
    * [CXF-2532] - On demand retrieval of JAX-WS MessageContext properties

** New Feature
    * [CXF-2015] - Add capability to configure per-request client interceptors
    * [CXF-2439] - Support multiple class resource matching in JAXRS selection algorithm






** Test
    * [CXF-2493] - HTTPSClientTest.testPKCS12Endpoint fails on windows
    * [CXF-2507] - Add some unit tests for the TLS cert constraints stuff



