Issues regarding jetty migration from 9 to 10\11

1.4k views Asked by At

I am trying migrate our application from Jetty 9 to Jetty 10 and Jetty 11.

However following classes\interfaces from Jetty 9 are not available in Jetty 10\11. MemSession AbstractSessionManager AbstractSessionIdManager

Which are replacement classes for above?

I have checked Jetty documentation, however it is not much helpful. And there is no migration guide available.

1

There are 1 answers

6
Joakim Erdfelt On

You have stated you are going from Jetty 9.3.x to 11.x, that would be major version updates of 9.3 -> 9.4 -> 10.0 -> 11.0 (so 3 major version updates, as Jetty versioning is <servlet_support>.<major_version>.<minor_version>). You cannot expect classes to stick around between multiple major version updates.

The 3 classes you have referenced, do not exist in the most recent versions of Jetty 9.

See: https://github.com/eclipse/jetty.project/tree/jetty-9.4.51.v20230217/jetty-server/src/main/java/org/eclipse/jetty/server/session

MemSession - not sure what you are referring to here. There is no concept of unique Session implementations in Jetty 10. There is only 1 internal implementation that you have no ability to replace or override behavior of.

AbstractSessionManager - this class does not exist either.
However, the whole SessionManager (the interface) concept was removed in Jetty 9.4.0, it is not present in Jetty 10 onwards. There is no replacement for this concept. (it was barely used in Jetty 9.3.x anyway, and newer Servlet specs rendered this concept useless in Jetty)

AbstractSessionIdManager - this class also does not exist in Jetty 9.
However, there is a org.eclipse.jetty.server.SessionIdManager interface in Jetty 9, and it operates basically the same way as in Jetty 10+

There is only 1 implementation with Jetty, org.eclipse.jetty.server.session.DefaultSessionIdManager

There are many features of Jetty Session handling.