Skip to content

feat: add Jakarta EE Servlet 6.0 adapter module (#2998)#3627

Open
EvanYao826 wants to merge 2 commits into
alibaba:1.8from
EvanYao826:feat/jakarta-servlet-adapter-2998-v2
Open

feat: add Jakarta EE Servlet 6.0 adapter module (#2998)#3627
EvanYao826 wants to merge 2 commits into
alibaba:1.8from
EvanYao826:feat/jakarta-servlet-adapter-2998-v2

Conversation

@EvanYao826

Copy link
Copy Markdown

Fixes #2998

Replaces #3618 (rebased onto latest 1.8 to resolve merge conflicts).

Summary

Add sentinel-web-servlet-jakarta module to support Jakarta EE Servlet 6.0 (Spring Boot 3.x, JDK 17+).

Background

Spring Boot 3.x migrated from javax.servlet to jakarta.servlet as part of the Jakarta EE 9+ transition. The existing sentinel-web-servlet module uses javax.servlet-api 3.1.0 and is incompatible with Spring Boot 3.x applications.

Changes

New module: sentinel-adapter/sentinel-web-servlet-jakarta

  • pom.xml: Maven configuration with jakarta.servlet-api 6.0.0 and Spring Boot 3.2.0 for tests
  • 10 Java source files from sentinel-web-servlet with javax.servlet to jakarta.servlet migration
    • CommonFilter, CommonTotalFilter, callback classes, config, utils

Modified: sentinel-adapter/pom.xml

  • Added module sentinel-web-servlet-jakarta (only in jdk17-plus profile)
  • Added skip.spring.v6x.test property to skip tests on JDK < 17

Compatibility

  • Jakarta EE Servlet 6.0+
  • Spring Boot 3.x
  • JDK 17+

EvanYao826 and others added 2 commits June 16, 2026 11:34
Add sentinel-web-servlet-jakarta module to support Jakarta EE Servlet
6.0 (Spring Boot 3.x, JDK 17+).

Changes:
- New module: sentinel-adapter/sentinel-web-servlet-jakarta
- All javax.servlet imports replaced with jakarta.servlet
- jakarta.servlet-api 6.0.0 (replacing javax.servlet-api 3.1.0)
- Spring Boot 3.2.0 for tests (replacing 1.5.17.RELEASE)
- Added new module to sentinel-adapter/pom.xml

Usage:
  <dependency>
    <groupId>com.alibaba.csp</groupId>
    <artifactId>sentinel-web-servlet-jakarta</artifactId>
  </dependency>

Fixes alibaba#2998
Moved sentinel-web-servlet-jakarta into a jdk17-plus profile so CI
on JDK 8 and 11 no longer fails. Set compiler source/target to 17
for the Jakarta module since Spring Boot 3.x requires JDK 17+.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add support for Jakarta EE Servlet in adapter modules

1 participant