4.3. API Changes


HTTPConduit class

The HTTPConduit class has been made abstract and the code relating to HttpURLConnection has been moved to URLConnectionHTTPConduit. Several method calls of the HTTPConduit class that used to take HttpURLConnection objects have been eliminated. Moreover, most methods taking a URL object now take a URI object instead. The HTTPConduit.WrappedOutputStream class is also now abstract.
If you have implemented custom subclasses of HTTPConduit, it is probably necessary to refactor them as a subclass URLConnectionHTTPConduit, instead of HTTPConduit.

VersionTransformer and MAPCodec classes

The VersionTransformer and MAPCodec classes (used for WS-Addressing) now use the header list on the SoapMessage directly, instead of encoding the WS-Addressing headers as DOM elements. The encode methods have therefore been changed to take a JAXBContext argument, instead of a Marshaller argument. Any custom VersionTransformers will need to be updated.

AbstractFeatures as return value or parameter

All methods with an argumnet or return value of type, org.apache.cxf.feature.AbstractFeatures, have been changed to use org.apache.cxf.feature.Feature instead.

Removed classes

The following classes have been removed from the JAX-RS library:
org.apache.cxf.jaxrs.client.ResponseReader
org.apache.cxf.jaxrs.client.ServerWebApplicationException
org.apache.cxf.jaxrs.client.ClientWebApplicationException
The first class in the list is not needed with the JAX-RS 2.0 Response class, while the last two classes are replaced by the classes, javax.ws.rs.WebApplicationException and javax.ws.rs.client.ClientException.

Security Token Service (STS) API

The STS Claims object now takes a List<String> argument for the claims values, instead of a single String value.

Deprecated APIs

The following CXF JAX-RS specific extensions have been deprecated and will eventually be removed:
org.apache.cxf.jaxrs.ext.ParamHandler
Use the javax.ws.rs.ext.ParamConverterProvider and javax.ws.rs.ext.ParamConverter classes instead.
org.apache.cxf.jaxrs.ext.RequestHandler
Use the javax.ws.rs.container.ContainerRequestFilter class instead.
org.apache.cxf.jaxrs.ext.ResponseHandler
Use javax.ws.rs.container.ContainerResponseFilter instead.
Red Hat logoGithubRedditYoutubeTwitter

Learn

Try, buy, & sell

Communities

About Red Hat Documentation

We help Red Hat users innovate and achieve their goals with our products and services with content they can trust.

Making open source more inclusive

Red Hat is committed to replacing problematic language in our code, documentation, and web properties. For more details, see the Red Hat Blog.

About Red Hat

We deliver hardened solutions that make it easier for enterprises to work across platforms and environments, from the core datacenter to the network edge.

© 2024 Red Hat, Inc.