Apache CXF 3.4.5 Release Notes

1. Overview

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

New features include: 
* New cxf-bom artifactId for importing all the CXF artifacts
* New support for Microprofile OpenAPI (as alternative to Swagger Core 2.0)
* New samples to show WS-Transaction usage, OpenAPI v3.0 with Microprofile
* Ability in Logging feature to mask sensitive information
* New support for SSEs in Microprofile Rest Client
* OAuth 2.0 Authorization Server Metadata / OpenID Provider Metadata

Important notes:
* Many dependencies have been upgraded to newer versions.  Check
  the migration guide.


Users are encouraged to review the migration guide at:
http://cxf.apache.org/docs/34-migration-guide.html
for further information and requirements for upgrading from earlier
versions of CXF.

3.4.5 fixes over 34 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 8 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/34-migration-guide.html
for caveats when upgrading.

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

** Sub-task
    * [CXF-8514] - jaxrs.spec.context.client clientReaderTest
    * [CXF-8515] - jaxrs.spec.context.client clientWriterTest
    * [CXF-8534] - Fix org.apache.cxf.jaxrs.client.logging.RESTLoggingTest.testBinary
    * [CXF-8548] - Get rid of Powermock usage
    * [CXF-8573] - Fix org.apache.cxf.systest.jaxrs.spring.boot.SpringJaxrsTest.testJaxrsSuccessMetric

** Bug
    * [CXF-7543] - JAX-RS Features not used in proxies or WebClients
    * [CXF-8544] - SseEventSink cannot be used in a @POST resource method
    * [CXF-8551] - wsdl2java: NoClassDefFoundError: javax/jws/soap/SOAPBinding$Style with Java 11
    * [CXF-8555] - JsonMapObjectReaderWriter escapes now any back slash
    * [CXF-8556] - Null AbstractEndpointFactory Properties Interferes with Class-Level PathParam When Creating Proxies with Defined ClientState
    * [CXF-8557] - Incorrect Proxy Path Segmenting when @Path Annotation Regex Expression Contains "/"
    * [CXF-8559] - SseInterceptor uses PROTOCOL_HEADERS from request (in) message, not from response (out) one
    * [CXF-8561] - SseEventSource sometimes sends partial events when being closed
    * [CXF-8565] - Unable to use transport-http-petty-client with JAX-RS due to NPE
    * [CXF-8566] - cxf-ws-rt-security & ehcache: OSGi classloading
    * [CXF-8568] - DefaultLogEventMapper map() Method Signature Breaking Change
    * [CXF-8569] - http-undertow: ensure clear registered paths until destory an undertow server(Port)
    * [CXF-8572] - Incorrectly parsed ETag when contains 'W/' as part of the content
    * [CXF-8574] - Rest call on jax-rs interface with long @Path and 3 pathparams causes error since cxf-rt-rs-mp-client 3.3.3
    * [CXF-8578] - Bridge methods for covariant return types cannot be invoked on client proxies
    * [CXF-8585] - cxf-specs feature should use stax2-api 4.2 and flag bundle with dependency=true
    * [CXF-8588] - Micrometer operation UNKNOWN for clients
    * [CXF-8590] - First invocation of method causes NPE failure in neethi.PolicyBuilder
    * [CXF-8591] - Temporary queues are never deleted when the are used
    * [CXF-8593] - Error when installing CXF OpenAPI v3 under Karaf 4.2.11
    * [CXF-8594] - Regular expression parameter with non-capturing group doesn't work
    * [CXF-8596] - WebFaultOutInterceptor goes into infinite loop when it tries to write SoapFaultException with detail
    * [CXF-8597] - CXF JAXRS client not closing HTTP connections

** Improvement
    * [CXF-8117] - Make dependencies optional
    * [CXF-8539] - Allow client-only Spring Boot autoconfiguration
    * [CXF-8587] - Don't check the validation flag and get the schema on every iteration for SoapHeader
    * [CXF-8600] - Swagger2Feature : Upgrade SwaggerUiConfig to add more configs

** Test
    * [CXF-8570] - a test to demonstrate how to configure JAXRSClientFactoryBean with org.apache.cxf.feature.Feature to enable Client Cache

** Wish
    * [CXF-8582] - Add "CXF Additional Configuration" properties also as part of spring-configuration-metadata.json in cxf-spring-boot-autoconfigure.
