Chapter 30. Migration Guide
Prev |  | Next

Links: Table of Contents | Single HTML

# Chapter 30. Migration Guide

## 30.1. Migrating from Jersey 3.0.11 to 3.0.12

### 30.1.1. Changes in Jackson

Jersey 3.0.12 starts to support Jackson 2.15 which comes with default limitations for the length of parsed text, numbers, and nesting depth. Jersey keeps the Jackson default value, but it allows to override the maximum length of parsed text using the MessageProperties.JSON_MAX_STRING_LENGTH property if needed.

## 30.2. Migrating from Jersey 2.32+ to 3.0.x.

### 30.2.1. Breaking Changes

- The most fundamental change in Jersey 3.0.15 and later is namespace change. Since Jakarta EE 9 the `jakarta.` namespace is introduced as a replacement for javax namespace from Java EE.

  Due to required jakartification several modules where omitted (because of not satisfied dependencies). Or require higher JDK (11+).

  Spring for now is not supported.

  Helidon connector for now is not supported.

  Examples and tests are reduced in quantity (so you probably will not find all those examples which were available in the 2.32 version).

### 30.2.2. Removed deprecated APIs

- Jackson 1 support was removed.

### 30.2.3. Application servers for Jersey

Note that only a few servers support Jakarta EE 9 compatible Servlet API and they are tested with Jersey. Those are: `GlassFish 6`, `Grizzly 3`, `Jetty 11 (JDK 11+ required)`, `Payara 6`, and `Tomcat 10`.

## 30.3. Migrating from Jersey 3.0.x to 3.0.15.

### 30.3.1. Breaking Changes

- Jersey 3.1.0+ is the implementation of Jakarta RESTful WebServices 3.1, which is part of Jakarta EE 10. Jakarta EE 10 defines the minimum JDK 11 requirement and hence Jersey no longer supports JDK 8.

- ServerProperties.UNWRAP_COMPLETION_STAGE_IN_WRITER_ENABLE is by default `true`.

Prev |  | Next
Chapter 29. Building and Testing Jersey | Home | Appendix A. Configuration Properties