Apache Wicket 8.x and 9.x each get one final release, and then reach end of life. After that they get no more releases, not even security fixes, and Wicket’s support for the javax.servlet API ends with them. We announce the final releases on the announce list and here on the blog. If your application runs on Wicket 8 or 9, plan the move to Wicket 10 now: it is our long-term support release, supported until July 2027.

What end of life means

After their final release:

  • no new 8.x or 9.x release ships, for bugs or for vulnerabilities;
  • every release stays available: on Maven Central, and in the Apache archives;
  • the users list still helps with questions, but a fix for a problem in 8 or 9 only ships in the lines we still support.

Why we stop

We announced this with the new release cadence. Every security report has to be assessed, fixed, backported and released for each line we support. With four lines that work is done four times, and that is time not spent on improving Wicket itself. Retiring 8 and 9 ends that.

Wicket 8 and 9 are also the last lines on javax.servlet. Jakarta EE 9 moved the Java enterprise APIs to the jakarta namespace in December 2020, almost six years ago, and Wicket 10 moved with it.

How to move to Wicket 10

Wicket 10 requires Java 17 and Jakarta Servlet 5.0 or newer, and its integrations move along: Spring 6, Guice 7 and Commons FileUpload 2.

The upgrade paths on the releases page show the route, and the pages of Wicket 9 and Wicket 8 carry it as well.

Need help?

Ask on the users list when the migration raises questions; include your Wicket and Java versions. If you need more hands or more time, several companies offer training, consulting and development for Wicket applications. The Wicket project does not endorse or rank them.