Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Jetty 10 Support #26123

Closed
rstoyanchev opened this issue Nov 19, 2020 · 2 comments
Closed

Jetty 10 Support #26123

rstoyanchev opened this issue Nov 19, 2020 · 2 comments
Assignees
Labels
in: web Issues in web modules (web, webmvc, webflux, websocket) type: enhancement A general enhancement
Milestone

Comments

@rstoyanchev
Copy link
Contributor

rstoyanchev commented Nov 19, 2020

Jetty 10 includes major changes of its WebSocket API as well as other changes to fairly prominent API types (e.g. access to headers via HttpFields). For 5.3.x we need to support 9.4.x and 10.x side by side.

@rstoyanchev rstoyanchev added in: web Issues in web modules (web, webmvc, webflux, websocket) type: enhancement A general enhancement labels Nov 19, 2020
@rstoyanchev rstoyanchev added this to the 5.x Backlog milestone Nov 19, 2020
@rstoyanchev rstoyanchev self-assigned this Nov 19, 2020
@rstoyanchev rstoyanchev modified the milestones: 5.x Backlog, 5.3.3 Dec 7, 2020
@rstoyanchev
Copy link
Contributor Author

After some experimentation, currently for Jetty 10 it is expected to extend JettyWebSocketServlet and use a JettyWebSocketCreator argument passed into a protected method to register WebSocket endpoints. That alone won't help us. It is possible to do what JettyWebSocketServlet does with all public classes but some are in internal packages.

A better option would be to have a dedicated SPI for programmatic upgrades. There is now an issue to track that jetty/jetty.project#5866 and once available we'll make use of it.

@rstoyanchev rstoyanchev modified the milestones: 5.3.3, 5.3.4 Jan 8, 2021
@rstoyanchev rstoyanchev changed the title Jetty 10 WebSocket Support Jetty 10 Support Jan 21, 2021
@rstoyanchev
Copy link
Contributor Author

Support for Jetty 10 is now in master. I've done basic testing with:

  • spring-websocket server and client
  • spring-webflux server and client
  • Jetty reactive HTTP client.

poutsma added a commit that referenced this issue Jan 26, 2023
Though Jetty 10 was previously supported in the JettyClientHttpResponse,
this commit ensures support in the JettyClientHttpRequest.

Closes gh-29867
See gh-26123
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
in: web Issues in web modules (web, webmvc, webflux, websocket) type: enhancement A general enhancement
Projects
None yet
Development

No branches or pull requests

1 participant