The team behind the Apache project Tomcat has announced version 10.0. The open source server implements the Java specifications Jakarta Servlet, Jakarta Server Pages, Jakarta Expression Language, Jakarta WebSocket, Jakarta Authentication and Jakarta Annotations. Those in the know will recognize from the Jakarta name that the migration from Java EE to Jakarta EE played a role in the Tomcat.
Enterprise Java development is now taking place under the name Jakarta EE and under the umbrella of the Eclipse Foundation. In the course of the migration, the primary package for all implemented APIs from javax.* on Jakarta.* changed. This will almost certainly require code changes to migrate existing and older applications to the new or future versions. According to the announcement, a migration tool to support this process is in development.
The Tomcat 10 is still shown as beta quality, but at least the server has already successfully passed the relevant tests of the Technology Compatibility Kit (TCK). The APR / Native AJP and HTTP connectors are also considered obsolete. The Tomcat native library, however, is still used to support the use of OpenSSL with NIO and NIO2.
Finally, the behavior of
ServletContext.getRealPath(String path) to match the current description of the servlet specification. Because if the parameter
path not with
/ starts, then Tomcat processes the call as if
/ is appended to the beginning of the specified path.
Further information can be found in the changelog for the current issue. Migration help is available here.