Release Notes - Jersey 2.16
Release date: 11-Feb-2015
Highlights
JAX-B providers separated from the core
From version 2.16 onwards, all JAX-B providers are being bundled in a separate module.
Performance gain when using Sub-Resource Locators
We improved the performance for using sub-resource locators in an Jersey application. The performance gains
are available for cases when the sub-resource locator method returns either a resource class (return value is
e.g. Class<?>
or Class<MySubResource>
) or a (non-proxied)
resource instance (when return value is an instance of MySubResource
class).
More unified connector configuration options
Jetty connector and Apache connector have been previously using their own custom properties
to set SSL context on a connector. These properties have been deprecated and the code has been updated
to read the SSL context information from the JAX-RS client configuration. This means that all Jersey
connectors now properly accept SSL configuration as configured via standard JAX-RS
ClientBuilder methods.
Previously, all Jersey connectors have been using their own default chunk size when HTTP chunked coding
was used. Since Jersey 2.16, there is a new default chunk size value used by all connectors, if a custom
chunk size is not set. The new default value is stored under
ClientProperties.DEFAULT_CHUNK_SIZE client property.
Bug
- [JERSEY-2635] - Jersey does not produce first media type when accepts header is "*/*"
- [JERSEY-2637] - sensitive params can be exposed in logs even for POST requests
- [JERSEY-2668] - Memory leak using @BeanParams, @Context and @Valid arguments in resource methods
- [JERSEY-2675] - SSLConnections are not reused
- [JERSEY-2707] - char cannot be used as the type of a @*Param
- [JERSEY-2742] - LoggingFilter's LoggingStream does not delegate flush()
- [JERSEY-2748] - When running grizzly http server on z/OS, incoming JAX-RS based REST request URIs are incorrectly converted from UTF-8 to EBCDIC default charset and thus lead to HTTP 404
- [JERSEY-2753] - UriBuilder should leave relative path relative
- [JERSEY-2760] - TimeZones in DateProvider (via HttpDateFormat) can get corrupted
- [JERSEY-2781] - Locale-dependent test fails in org.glassfish.jersey.message.internal.QualityTest.testEnhanceWithQualityParameter
- [JERSEY-2783] - Priority comparator fails when dealing with edge case values Integer.MIN_VALUE and Integer.MAX_VALUE
Improvement
- [JERSEY-1708] - Implement sub-resource runtime model caching.
- [JERSEY-2695] - Make EncodingFilter.enableFor type safe
- [JERSEY-2718] - Cleanup code, fixing performance issues
Task
- [JERSEY-2132] - Entity Filtering - Add support for JSON via Jackson
Pull Requests
- [Pull 88] - getCookieStore method in ApacheConnectorProvider
- [Pull 102] - Produce first declared content-type on Accept:*/*
- [Pull 111] - Cache SSLSocketFactory so that connections can be reused. (JERSEY-2675)
- [Pull 115] - [JERSEY-2681] Added Spring Component method autowiring support.
- [Pull 125] - JERSEY-2718 cleanup code
- [Pull 132] - Fix various issues with JarFileScanner
- [Pull 134] - Add support for nested generics to ConfigurableMoxyJsonProvider
Previous releases