Appendix A. Configuration Properties
Prev |  |

Links: Table of Contents | Single HTML

# Appendix A. Configuration Properties

## A.1. Common (client/server) configuration properties

List of common configuration properties that can be found in CommonProperties class. All of these properties can be overridden by their server/client counterparts.

Table A.1. List of common configuration properties

Constant | Value | Description
--- | --- | ---
CommonProperties.ALLOW_SYSTEM_PROPERTIES_PROVIDER | `jersey.config.allowSystemPropertiesProvider` | Property which allows (if true) default System properties configuration provider. Default value is `true`.
CommonProperties.FEATURE_AUTO_DISCOVERY_DISABLE / CommonProperties.FEATURE_AUTO_DISCOVERY_DISABLE_CLIENT / CommonProperties.FEATURE_AUTO_DISCOVERY_DISABLE_SERVER | `jersey.config.disableAutoDiscovery`/ `jersey.config.client.disableAutoDiscovery`/ `jersey.config.server.disableAutoDiscovery` | Disables feature auto discovery globally on client/server. Default value is `false`.
CommonProperties.JSON_PROCESSING_FEATURE_DISABLE / CommonProperties.JSON_PROCESSING_FEATURE_DISABLE_CLIENT / CommonProperties.JSON_PROCESSING_FEATURE_DISABLE_SERVER | `jersey.config.disableJsonProcessing` / `jersey.config.client.disableJsonProcessing` / `jersey.config.server.disableJsonProcessing` | Disables configuration of Json Processing (JSR-353) feature. Default value is `false`.
CommonProperties.METAINF_SERVICES_LOOKUP_DISABLE / CommonProperties.METAINF_SERVICES_LOOKUP_DISABLE_CLIENT / CommonProperties.METAINF_SERVICES_LOOKUP_DISABLE_SERVER | `jersey.config.disableMetainfServicesLookup` / `jersey.config.client.disableMetainfServicesLookup` / `jersey.config.server.disableMetainfServicesLookup` | Disables META-INF/services lookup globally on client/server. Default value is `false`.
CommonProperties.MOXY_JSON_FEATURE_DISABLE / CommonProperties.MOXY_JSON_FEATURE_DISABLE_CLIENT / CommonProperties.MOXY_JSON_FEATURE_DISABLE_SERVER | `jersey.config.disableMoxyJson` / `jersey.config.client.disableMoxyJson` / `jersey.config.server.disableMoxyJson` | Disables configuration of MOXy Json feature. Default value is `false`.
CommonProperties.OUTBOUND_CONTENT_LENGTH_BUFFER / CommonProperties.OUTBOUND_CONTENT_LENGTH_BUFFER_CLIENT / CommonProperties.OUTBOUND_CONTENT_LENGTH_BUFFER_SERVER | `jersey.config.contentLength.buffer` / `jersey.config.client.contentLength.buffer` / `jersey.config.server.contentLength.buffer` | An integer value that defines the buffer size used to buffer the outbound message entity in order to determine its size and set the value of HTTP `Content-Length` header. Default value is `8192`.
CommonProperties.PROVIDER_DEFAULT_DISABLE | `jersey.config.disableDefaultProvider` | Disable some of the default providers from being loaded. The following providers extend application footprint by XML dependencies, which is too heavy for native image, or by AWT which may possibly be not available by JDK 11 desktop:
java.awt.image.RenderedImage
javax.xml.transform.Source
javax.xml.transform.dom.DOMSource
javax.xml.transform.sax.SAXSource
javax.xml.transform.stream.StreamSource
The following are the options to disable the provides: {@code DOMSOURCE, RENDEREDIMAGE, SAXSOURCE, SOURCE, STREAMSOURCE}, or to disable all: {@code ALL}. Multiple options can be disabled by adding multiple comma separated values. Default value is `NULL` @since 2.30
LoggingFeature.LOGGING_FEATURE_LOGGER_NAME | `jersey.config.logging.logger.name` | Logger name of the logging filter. See logging chapter for more information. The default value is `org.glassfish.jersey.logging.LoggingFeature`
LoggingFeature.LOGGING_FEATURE_LOGGER_LEVEL | `jersey.config.logging.logger.level` | Level of logging filter's logger at which the messages will be logged. See logging chapter for more information.
LoggingFeature.LOGGING_FEATURE_VERBOSITY | `jersey.config.logging.verbosity` | Verbosity of logging filter describes how verbose the logging filter will be. There are 3 possible values `LoggingFeature.Verbosity.HEADERS_ONLY`, `LoggingFeature.Verbosity.PAYLOAD_TEXT` or `LoggingFeature.Verbosity.PAYLOAD_ANY`. See logging chapter for more information.
LoggingFeature.LOGGING_FEATURE_MAX_ENTITY_SIZE | `jersey.config.logging.entity.maxSize` | The maximum number of bytes of the entity which will be logged. See logging chapter for more information.
LoggingFeature.LOGGING_FEATURE_SEPARATOR | `jersey.config.logging.entity.separator` | Custom logging delimiter for new lines separation. See logging chapter for more information.

## A.2. Server configuration properties

List of server configuration properties that can be found in ServerProperties class.

Table A.2. List of server configuration properties

Constant | Value | Description
--- | --- | ---
ServerProperties.APPLICATION_NAME | `jersey.config.server.application.name` | Defines the application name. The name is an arbitrary user defined name which is used to distinguish between Jersey applications in the case that more applications are deployed on the same runtime (container). The name can be used for example for purposes of monitoring by JMX when name identifies to which application deployed MBeans belong to. The name should be unique in the runtime. The property does not have a default value.
ServerProperties.BV_FEATURE_DISABLE | `jersey.config.beanValidation.disable.server` | Disables Bean Validation support. Default value is `false`.
ServerProperties .BV_DISABLE_VALIDATE_ON_EXECUTABLE_OVERRIDE_CHECK | `jersey.config.beanValidation .disable.validateOnExecutableCheck.server` | Disables `@ValidateOnExecution` check. Default value is `false`.
ServerProperties.BV_SEND_ERROR_IN_RESPONSE | `jersey.config.beanValidation .enableOutputValidationErrorEntity.server` | Enables sending validation error information to the client. Default value is `false`.
ServerProperties.EMPTY_REQUEST_MEDIA_TYPE_MATCHES_ANY_CONSUMES | `jersey.config.server.empty.request.media.matches.any.consumes` | Jakarta RESTful WebServices provides `@Consumes` annotation to accept only HTTP requests with compatible HTTP `Content-Type` header. However, when the header is missing a wildcard media type is used to match the `@Consumes` annotation. HTTP/1.1 RFC recommends that missing HTTP `Content-Type` header MAY default to `application/octet-stream`. This property makes Jersey consider the missing HTTP `Content-Type` header to be `application/octet-stream` rather than a wildcard media type. However, for a resource method without an entity argument, such as for HTTP GET, a wildcard media type is still considered to accept the HTTP request for the missing HTTP `Content-Type` header. Set this property to `false`, if the empty request media type should not to match applied `@Consumes` annotation on a resource method with an entity argument. The default is `true`.
ServerProperties.FEATURE_AUTO_DISCOVERY_DISABLE | `jersey.config.server.disableAutoDiscovery` | Disables feature auto discovery on server. Default value is `false`.
ServerProperties.HTTP_METHOD_OVERRIDE | `jersey.config.server.httpMethodOverride` | Defines configuration of HTTP method overriding. This property is used by HttpMethodOverrideFilter to determine where it should look for method override information (e.g. request header or query parameters).
ServerProperties.JSON_PROCESSING_FEATURE_DISABLE | `jersey.config.server.disableJsonProcessing` | Disables configuration of Json Processing (JSR-353) feature. Default value is `false`.
ServerProperties.LANGUAGE_MAPPINGS | `jersey.config.server.languageMappings` | Defines mapping of URI extensions to languages. The property is used by UriConnegFilter.
ServerProperties.MEDIA_TYPE_MAPPINGS | `jersey.config.server.mediaTypeMappings` | Defines mapping of URI extensions to media types. The property is used by UriConnegFilter.
ServerProperties.METAINF_SERVICES_LOOKUP_DISABLE | `jersey.config.server.disableMetainfServicesLookup` | Disables META-INF/services lookup on server. Default value is `false`.
ServerProperties.MOXY_JSON_FEATURE_DISABLE | `jersey.config.server.disableMoxyJson` | Disables configuration of MOXy Json feature. Default value is `false`.
ServerProperties.MONITORING_ENABLED (Jersey 2.12 or later) | `jersey.config.server .monitoring.statistics.enabled` | If `true`, then application monitoring will be enabled. This will enable the possibility of injecting ApplicationInfo into resource and providers. Default value is `false`.
ServerProperties.MONITORING_STATISTICS_ENABLED | `jersey.config.server .monitoring.enabled` | If `true`, the calculation of monitoring statistics will be enabled. This will enable the possibility of injecting MonitoringStatistics into resource and providers and also the registered listeners implementing MonitoringStatisticsListener will be called when statistics are available for processing. Monitoring statistics extends basic monitoring feature. Therefore when enabled, the monitoring gets automatically enabled too (the same result as setting the property ServerProperties.MONITORING_ENABLED to `true`). Note that enabling statistics may have a negative performance impact and therefore should be enabled only when needed. Default value is `false`.
ServerProperties.MONITORING_STATISTICS_MBEANS_ENABLED | `jersey.config.server .monitoring.statistics.mbeans.enabled` | If `true` then Jersey will expose MBeans for the collected monitoring statistics. Exposed JMX MBeans are based on MonitoringStatistics data and therefore when enabled, the calculation of monitoring statistics gets automatically enabled too (the same result as setting the property ServerProperties.MONITORING_STATISTICS_ENABLED to `true`). Note that enabling MBeans for monitoring statistics may have a negative performance impact and therefore should be enabled only when needed. Default value is `false`.
ServerProperties.MONITORING_STATISTICS_REFRESH_INTERVAL (Jersey 2.10 or later) | `jersey.config.server .monitoring.statistics.refresh.interval` | Interval (in `ms`}) indicating how often will be monitoring statistics refreshed (`onStatistics` method called). Default value is `500`.
ServerProperties.OUTBOUND_CONTENT_LENGTH_BUFFER (Jersey 2.2 or later) | `jersey.config.contentLength.server.buffer` | An integer value that defines the buffer size used to buffer the outbound message entity in order to determine its size and set the value of HTTP `Content-Length` header. Default value is `8192`.
ServerProperties.PROVIDER_CLASSNAMES | `jersey.config.server.provider.classnames` | Defines one or more class names that implement application-specific resources and providers. If the property is set, the specified classes will be instantiated and registered as either application JAX-RS root resources or providers.
ServerProperties.PROVIDER_CLASSPATH | `jersey.config.server.provider.classpath` | Defines class-path that contains application-specific resources and providers. If the property is set, the specified packages will be scanned for JAX-RS root resources and providers.
ServerProperties.PROVIDER_PACKAGES | `jersey.config.server.provider.packages` | Defines one or more packages that contain application-specific resources and providers. If the property is set, the specified packages will be scanned for JAX-RS root resources and providers.
ServerProperties.PROVIDER_SCANNING_RECURSIVE | `jersey.config.server .provider.scanning.recursive` | Sets the recursion strategy for package scanning. Default value is `true`.
ServerProperties.REDUCE_CONTEXT_PATH_SLASHES_ENABLED | `jersey.config.server.reduceContextPathSlashes.enabled` | Ignores multiple slashes between a port and a context path and will resolve it as URI with only one slash. Default value is `false`.
ServerProperties.RESOURCE_VALIDATION_DISABLE | `jersey.config.server .resource.validation.disable` | Disables `Resource` validation. Default value is `false`.
ServerProperties.RESOURCE_VALIDATION_IGNORE_ERRORS | `jersey.config.server .resource.validation.ignoreErrors` | Determines whether validation of application resource models should fail even in case of a fatal validation errors. Default value is `false`.
ServerProperties.WADL_FEATURE_DISABLE | `jersey.config.server.wadl.disableWadl` | Disables WADL generation. Default value is `false`.
ServerProperties.WADL_GENERATOR_CONFIG | `jersey.config.server.wadl.generatorConfig` | Defines the wadl generator configuration that provides a WadlGenerator.
ServerProperties.RESPONSE_SET_STATUS_OVER_SEND_ERROR | `jersey.config.server.response.setStatusOverSendError` | Whenever response status is `4xx` or `5xx` it is possible to choose between `sendError` or `setStatus` on container specific `Response` implementation. E.g. on servlet container Jersey can call `HttpServletResponse.setStatus(...)` or `HttpServletResponse.sendError(...)`. Calling `sendError(...)` method usually resets entity, response headers and provide error page for specified status code (e.g. servlet `error-page` configuration). However if you want to post-process response (e.g. by servlet filter) the only way to do it is calling `setStatus(...)` on container Response object. If property value is `true` the method `Response.setStatus(...)` is used over default `Response.sendError(...)`. Type of the property value is `boolean`. The default value is `false`.
ServerProperties.TRACING | `jersey.config.server.tracing.type` | Enables/disables tracing support. Possible values are `OFF` (default), `ON_DEMAND` and `ALL`. See Section 23.2.1, “Configuration options” for more detail.
ServerProperties.TRACING_THRESHOLD | `jersey.config.server.tracing.threshold` | Sets the amount of detail provided by tracing. Possible values are `SUMMARY`, `TRACE` and `VERBOSE`. See Section 23.2.1, “Configuration options” to learn more about the levels.
ServerProperties.PROCESSING_RESPONSE_ERRORS_ENABLED | `jersey.config.server.exception.processResponseErrors` | If property value is `true` then the errors raised during response processing are tried to be handled using available response error mappers.
ServerProperties.SUBRESOURCE_LOCATOR_CACHE_SIZE | `jersey.config.server.subresource.cache.size` | An integer value that defines the size of cache for sub-resource locator models. The cache is used to provide better performance for application that uses JAX-RS sub-resource locators.
ServerProperties.SUBRESOURCE_LOCATOR_CACHE_AGE | `jersey.config.server.subresource.cache.age` | An integer value that defines the maximum age (in seconds) for cached for sub-resource locator models. The age of an cache entry is defined as the time since the last access (read) to the entry in the cache. Entry aging is not enabled by default.
ServerProperties.SUBRESOURCE_LOCATOR_CACHE_JERSEY_RESOURCE_ENABLED | `jersey.config.server.subresource.cache.jersey.resource.enabled` | If `true` then Jersey will cache Jersey resources in addition to caching sub-resource locator classes and instances (which are cached by default). To make sure the caching is effective in this case you need to return same Jersey Resource instances for same input parameters from resource method. This means that generating new Jersey Resource instances for same input parameters would not have any performance effect and it would only fill-up the cache.
ServerProperties.LOCATION_HEADER_RELATIVE_URI_RESOLUTION_RFC7231 | `jersey.config.server.headers.location.relative.resolution.rfc7231` | If `true` then Jersey will resolve relative URIs in the `Location` http header against the request URI according to `RFC7231` (new HTTP Specification)
ServerProperties.LOCATION_HEADER_RELATIVE_URI_RESOLUTION_DISABLED | `jersey.config.server.headers.location.relative.resolution.disabled` | If `true`, Jersey will not resolve relative URIs in the `Location` http header.
ServerProperties.UNWRAP_COMPLETION_STAGE_IN_WRITER_ENABLE | `jersey.config.server.unwrap.completion.stage.writer.enable` | If `true` or not set, message body writer will not use `CompletionStage` as a generic type. The `CompletionStage` value will be unwrapped and the message body writer will be invoked with the unwrapped type.
LoggingFeature.LOGGING_FEATURE_LOGGER_NAME_SERVER | `jersey.config.server.logging.logger.name` | Logger name of the logging filter. See logging chapter for more information. The default value is `org.glassfish.jersey.logging.LoggingFeature`
LoggingFeature.LOGGING_FEATURE_LOGGER_LEVEL_SERVER | `jersey.config.server.logging.logger.level` | Level of logging filter's logger at which the messages will be logged. See logging chapter for more information.
LoggingFeature.LOGGING_FEATURE_VERBOSITY_SERVER | `jersey.config.server.logging.verbosity` | Verbosity of logging filter describes how verbose the logging filter will be. There are 3 possible values `LoggingFeature.Verbosity.HEADERS_ONLY`, `LoggingFeature.Verbosity.PAYLOAD_TEXT` or `LoggingFeature.Verbosity.PAYLOAD_ANY`. See logging chapter for more information.
LoggingFeature.LOGGING_FEATURE_MAX_ENTITY_SIZE_SERVER | `jersey.config.server.logging.entity.maxSize` | The maximum number of bytes of the entity which will be logged. See logging chapter for more information.
LoggingFeature.LOGGING_FEATURE_SEPARATOR_SERVER | `jersey.config.server.logging.entity.separator` | Custom delimiter for new lines separation. See logging chapter for more information.

## A.3. Servlet configuration properties

List of servlet configuration properties that can be found in ServletProperties class.

Table A.3. List of servlet configuration properties

Constant | Value | Description
--- | --- | ---
ServletProperties.FILTER_CONTEXT_PATH | `jersey.config.servlet.filter.contextPath` | If set, indicates the URL pattern of the Jersey servlet filter context path.
ServletProperties.FILTER_FORWARD_ON_404 | `jersey.config.servlet.filter.forwardOn404` | If set to `true` and a 404 response with no entity body is returned from either the runtime or the application then the runtime forwards the request to the next filter in the filter chain. This enables another filter or the underlying servlet engine to process the request. Before the request is forwarded the response status is set to 200.
ServletProperties.FILTER_STATIC_CONTENT_REGEX | `jersey.config.servlet.filter.staticContentRegex` | If set the regular expression is used to match an incoming servlet path URI to some web page content such as static resources or JSPs to be handled by the underlying servlet engine.
ServletProperties.JAXRS_APPLICATION_CLASS | `jakarta.ws.rs.Application` | Application configuration initialization property whose value is a fully qualified class name of a class that implements JAX-RS Application.
ServletProperties.PROVIDER_WEB_APP | `jersey.config.servlet.provider.webapp` | Indicates that Jersey should scan the whole web app for application-specific resources and providers.
ServletProperties.QUERY_PARAMS_AS_FORM_PARAMS_DISABLED | `jersey.config.servlet.form.queryParams.disabled` | If `true` then query parameters will not be treated as form parameters (e.g. injectable using @FormParam) in case a Form request is processed by server.
ServletProperties.SERVICE_LOCATOR | `jersey.config.servlet.context.serviceLocator` | Identifies the object that will be used as a parent ServiceLocator in the Jersey WebComponent.

## A.4. Client configuration properties

List of client configuration properties that can be found in ClientProperties class.

Table A.4. List of client configuration properties

Constant | Value | Description
--- | --- | ---
ClientProperties.ASYNC_THREADPOOL_SIZE | `jersey.config.client.async.threadPoolSize` | Asynchronous thread pool size. Default value is not set. Supported with GrizzlyConnectorProvider only..
ClientProperties.BACKGROUND_SCHEDULER_THREADPOOL_SIZE | `jersey.config.client.backgroundScheduler.threadPoolSize` | Scheduler thread pool size. Default value is not set. Support is undefined.
ClientProperties.CHUNKED_ENCODING_SIZE | `jersey.config.client.chunkedEncodingSize` | Chunked encoding size. Default value is `4096`.
ClientProperties.CONNECT_TIMEOUT | `jersey.config.client.connectTimeout` | Read timeout interval, in milliseconds. Default value is `0` (infinity).
ClientProperties.FEATURE_AUTO_DISCOVERY_DISABLE | `jersey.config.client.disableAutoDiscovery` | Disables feature auto discovery on client. Default value is `false`.
ClientProperties.FOLLOW_REDIRECTS | `jersey.config.client.followRedirects` | Declares that the client will automatically redirect to the URI declared in 3xx responses. Default value is `true`.
ClientProperties.JSON_PROCESSING_FEATURE_DISABLE | `jersey.config.client.disableJsonProcessing` | Disables configuration of Json Processing (JSR-353) feature. Default value is `false`.
ClientProperties.METAINF_SERVICES_LOOKUP_DISABLE | `jersey.config.disableMetainfServicesLookup.client` | Disables META-INF/services lookup on client. Default value is `false`.
ClientProperties.MOXY_JSON_FEATURE_DISABLE | `jersey.config.client.disableMoxyJson` | Disables configuration of MOXy Json feature. Default value is `false`.
ClientProperties.OUTBOUND_CONTENT_LENGTH_BUFFER (Jersey 2.2 or later) | `jersey.config.client.contentLength.buffer` | An integer value that defines the buffer size used to buffer the outbound message entity in order to determine its size and set the value of HTTP `Content-Length` header. Default value is `8192`.
ClientProperties.PROXY_URI | `jersey.config.client.proxy.uri` | URI of a HTTP proxy the client connector should use. Default value is not set. Currently supported with ApacheConnectorProvider and JettyConnectorProvider only.
ClientProperties.PROXY_USERNAME (Jersey 2.5 or later) | `jersey.config.client.proxy.username` | User name which will be used for HTTP proxy authentication. Default value is not set. Currently supported with ApacheConnectorProvider and JettyConnectorProvider only.
ClientProperties.PROXY_PASSWORD (Jersey 2.5 or later) | `jersey.config.client.proxy.password` | Password which will be used for HTTP proxy authentication. Default value is not set. Currently supported with ApacheConnectorProvider and JettyConnectorProvider only.
ClientProperties.READ_TIMEOUT (Jersey 2.5 or later) | `jersey.config.client.readTimeout` | Read timeout interval, in milliseconds. Default value is `0` (infinity).
ClientProperties.REQUEST_ENTITY_PROCESSING (Jersey 2.5 or later) | `jersey.config.client.request.entity.processing` | Defines whether the request entity should be serialized using internal buffer to evaluate content length or chunk encoding should be used. Possible values are `BUFFERED` or `CHUNKED`. Default value is `BUFFERED`.
ClientProperties.SUPPRESS_HTTP_COMPLIANCE_VALIDATION (Jersey 2.2 or later) | `jersey.config.client.suppressHttpComplianceValidation` | If `true`, the strict validation of HTTP specification compliance for client-side requests will be suppressed. When compliance checks are suppressed, any violations will be merely logged as warnings, rather than causing exceptions being raised in Jersey runtime. Default value is `false`.
ClientProperties.USE_ENCODING | `jersey.config.client.useEncoding` | Indicates the value of `Content-Encoding` property the EncodingFilter should be adding. Default value is not set.
ClientProperties.DIGESTAUTH_URI_CACHE_SIZELIMIT | `jersey.config.client.digestAuthUriCacheSizeLimit` | The property defines a URI of a HTTP proxy the client connector should use.
ClientProperties.EXPECT_100_CONTINUE | `jersey.config.client.request.expect.100.continue.processing` | Allows for HTTP Expect:100-Continue being handled by the HttpUrlConnector (default Jersey connector). `Since 2.32`
ClientProperties.EXPECT_100_CONTINUE_THRESHOLD_SIZE | `jersey.config.client.request.expect.100.continue.threshold.size` | Property for threshold size for content length after which Expect:100-Continue header would be applied before the main request. Default threshold size (64kb) after which which Expect:100-Continue header would be applied before the main request. `Since 2.32`
LoggingFeature.LOGGING_FEATURE_LOGGER_NAME_CLIENT | `jersey.config.client.logging.logger.name` | Logger name of the logging filter. See logging chapter for more information. The default value is `org.glassfish.jersey.logging.LoggingFeature`
LoggingFeature.LOGGING_FEATURE_LOGGER_LEVEL_CLIENT | `jersey.config.client.logging.logger.level` | Level of logging filter's logger at which the messages will be logged. See logging chapter for more information.
LoggingFeature.LOGGING_FEATURE_VERBOSITY_CLIENT | `jersey.config.client.logging.verbosity` | Verbosity of logging filter describes how verbose the logging filter will be. There are 3 possible values `LoggingFeature.Verbosity.HEADERS_ONLY`, `LoggingFeature.Verbosity.PAYLOAD_TEXT` or `LoggingFeature.Verbosity.PAYLOAD_ANY`. See logging chapter for more information.
LoggingFeature.LOGGING_FEATURE_MAX_ENTITY_SIZE_CLIENT | `jersey.config.client.logging.entity.maxSize` | The maximum number of bytes of the entity which will be logged. See logging chapter for more information.
LoggingFeature.LOGGING_FEATURE_SEPARATOR_CLIENT | `jersey.config.client.logging.entity.separator` | New line delimiter property (client side). See logging chapter for more information.

Prev |  |
Chapter 29. Migration Guide | Home |