Apache Wicket 10.x
The long-term support release.
- Latest release
- 10.11.0
- Status
- LTS In service
- Supported
- Until Jul 2027
- Java
- 17 or newer
- Servlet API
- Jakarta Servlet 5.0 or newer
Maven dependency
<!-- Apache Wicket 10.x LTS: Java 17+, Jakarta Servlet 5.0+ -->
<dependency>
<groupId>org.apache.wicket</groupId>
<artifactId>wicket-core</artifactId>
<version>10.11.0</version>
</dependency>Other modules, such as wicket-extensions and wicket-spring, take the same group id and version. Wicket's modules lists them all.
Download the source and binaries · New project? Generate one with the quick start
New in Wicket 10
-
Jakarta EE
Wicket 10 moves from the
javaxto thejakartanamespace. It requires Java 17 and Servlet 5 or newer, and its integrations move along: Spring 6, Guice 7 and Commons FileUpload 2.- Java
- 17
- Jakarta Servlet
- 5.0
- Spring
- 6
-
Automatic migration
The
wicket-migrationmodule brings OpenRewrite recipes that take care of the repetitive part of the upgrade: thejakartaimports, the Java 17 baseline and the moved Wicket classes.Terminal
mvn -U org.openrewrite.maven:rewrite-maven-plugin:run \ -Drewrite.recipeArtifactCoordinates=org.apache.wicket:wicket-migration:LATEST \ -DactiveRecipes=org.apache.wicket.BestPractices -
WicketTester in its own module
WicketTesterand the other testers move towicket-tester, sowicket-coreno longer depends on JUnit and works cleanly as a Java module. Add it as a test dependency and fix the imports.pom.xml
<dependency> <groupId>org.apache.wicket</groupId> <artifactId>wicket-tester</artifactId> <version>${wicket.version}</version> <scope>test</scope> </dependency> -
Ready for current JDKs
Serializable proxies for Spring and CDI beans are now built with ByteBuddy instead of CGLib, which no longer works on JDK 17. Nothing changes in your code.
Documentation
-
Docs
The documentation for Wicket 10: tutorials, how-to guides, reference and explanation.
-
Migration guide
Migrating from Wicket 9 to 10: what changed and what to adjust in your application.
-
API documentation
Javadoc for Wicket 10: every class, method and setting.
Blog posts about Wicket 10
-
A security policy for Apache Wicket
Wicket now documents how to report a vulnerability, what is in scope, and which inputs the framework trusts, in a SECURITY.md on every supported branch. -
Apache Wicket 10.0.0 released
The Apache Wicket PMC is proud to announce Apache Wicket 10.0.0! Apache Wicket is an open source Java component oriented web application framework that powers thousands of web...
Download
Source and binaries
Most projects get Wicket through Maven or Gradle, with the dependency at the top of this page. To build Wicket yourself, or to use it without a build tool, download the source:
- Download source apache-wicket-10.11.0.tar.gz (PGP, SHA-512 )
- Download source apache-wicket-10.11.0.zip (PGP, SHA-512 )
Or the binaries:
- Download binaries apache-wicket-10.11.0-bin.tar.gz (PGP, SHA-512 )
- Download binaries apache-wicket-10.11.0-bin.zip (PGP, SHA-512 )
Neither package contains the libraries Wicket depends on; a build tool such as Maven or Gradle brings those in.
Verify a download
Check its PGP signature with the keys in the KEYS file, as the ASF explains.
Older releases
The mirrors carry only the latest release of each line in service. Every older release is in the Apache archives.
Change log
What changed in each release of this line is in the change log.
Requirements
The Java and Servlet API versions this line needs are at the top of the page. Some modules need more libraries, such as file upload, date and time APIs or the CDI specification; each module’s POM lists them.
Logging
Wicket logs through SLF4J, so your application needs an SLF4J implementation on the classpath. The SLF4J manual lists them.
Don’t mix Wicket versions
Use one Wicket version for every Wicket module in a project: wicket-core, wicket-extensions, wicket-spring and the others are released together and only work with the same version. Libraries built on Wicket are made for one Wicket line; use the version made for yours.