Mirror of Apache Wicket
Switch branches/tags
wicket_1_2_b2_before_charsequence wicket-spring-examples-1.0 wicket-spring-cattr-1.0 wicket-spring-annot-examples-1.0 wicket-spring-annot-1.0 wicket-spring-1.0 wicket-7.2.0 wicket-7.1.0 wicket-7.0.0 wicket-7.0.0-M6 wicket-7.0.0-M5 wicket-7.0.0-M4 wicket-7.0.0-M3 wicket-7.0.0-M2 wicket-7.0.0-M1 wicket-6.21.0 wicket-6.20.0 wicket-6.19.0 wicket-6.18.0 wicket-6.17.0 wicket-6.16.0 wicket-6.15.0 wicket-6.14.0 wicket-6.13.0 wicket-6.12.0 wicket-6.11.0 wicket-6.10.0 wicket-6.9.1 wicket-6.9.0 wicket-6.8.0 wicket-6.7.0 wicket-6.6.0 wicket-6.5.0 wicket-6.4.0 wicket-6.3.0 wicket-6.2.0 wicket-6.1.1 wicket-6.1.0 wicket-6.0.0 wicket-6.0.0-beta3 wicket-6.0.0-beta2 wicket-6.0.0-beta1 wicket-1.5.13 wicket-1.5.12 wicket-1.5.11 wicket-1.5.7 wicket-1.5.6 wicket-1.5.5 wicket- wicket-1.5.4 wicket-1.5.3 wicket-1.5.2 wicket-1.5.1 wicket-1.5.0 wicket-1.5-RC7 wicket-1.5-RC6 wicket-1.5-RC5 wicket-1.5-RC4.2 wicket-1.5-RC4 wicket-1.5-RC3 wicket-1.5-RC2 wicket-1.5-RC1 wicket-1.5-M3 wicket-1.5-M2.1 wicket-1.5-M2 wicket-1.5-M1 wicket-1.4.23 wicket-1.4.20 wicket-1.4.19 wicket-1.4.18 wicket-1.4.17 wicket-1.4.16 wicket-1.4.15 wicket-1.4.14 wicket-1.4.13 wicket-1.4.12 wicket-1.4.11 wicket-1.4.10 wicket-1.4.9 wicket-1.4.8 wicket-1.4.7 wicket-1.4.6 wicket-1.4.5 wicket-1.4.4 wicket-1.4.3 wicket-1.4.2 wicket-1.4.0 wicket-1.4.x-before-generics-refactoring wicket-1.4-rc5 wicket-1.4-rc4 wicket-1.4-rc3 wicket-1.4-rc2 wicket-1.4-rc2-first-try wicket-1.4-rc1 wicket-1.4-m3 wicket-1.4-m2 wicket-1.4-m1 wicket-1.3.7 wicket-1.3.6 wicket-1.3.5
Nothing to show
Clone or download
Sven Meier xzr
Latest commit 584b7f6 Sep 25, 2018
Failed to load latest commit information.
archetypes Fix ridiculous maven-enforcer-plugin rules which came with the update… Sep 5, 2018
licenses WICKET-3697 clean up of NOTICE files and removal of obsolete license … May 10, 2011
testing WICKET-6581 Module wicket-cdi-1.1 migrated to CDI 2 and name changed … Sep 24, 2018
wicket-auth-roles Merge remote-tracking branch 'tmp/docs/role-based-auth' into HEAD Aug 8, 2018
wicket-bean-validation Adds missing @override annotations Jul 15, 2018
wicket-cdi WICKET-6581 Module wicket-cdi-1.1 migrated to CDI 2 and name changed … Sep 24, 2018
wicket-core WICKET-6570 escape component cookies only Sep 25, 2018
wicket-devutils Adds missing @override annotations Jul 15, 2018
wicket-eclipse-settings Release wicket-eclipse-settings 4 Jan 18, 2018
wicket-examples WICKET-6581 Module wicket-cdi-1.1 migrated to CDI 2 and name changed … Sep 24, 2018
wicket-experimental Fix ridiculous maven-enforcer-plugin rules which came with the update… Sep 5, 2018
wicket-extensions WICKET-6576 parse pattern Aug 6, 2018
wicket-guice Fix deprecation warning. Jul 24, 2018
wicket-ioc WICKET-6581 Module wicket-cdi-1.1 migrated to CDI 2 and name changed … Sep 24, 2018
wicket-jmx Updated project version to 9.0.0-SNAPSHOT May 21, 2018
wicket-native-websocket WICKET-6588 Under Tomcat (ver. >= 8.5) BaseWebSocketBehavior can't find Sep 20, 2018
wicket-objectsizeof-agent Updated project version to 9.0.0-SNAPSHOT May 21, 2018
wicket-request Merge remote-tracking branch 'try0/minor-modifications' into HEAD Aug 1, 2018
wicket-spring Fix ridiculous maven-enforcer-plugin rules which came with the update… Sep 5, 2018
wicket-user-guide Fix typo in docs Jun 4, 2018
wicket-util WICKET-6584 Fix org.junit as resolution:=optional Sep 8, 2018
wicket-velocity Updated project version to 9.0.0-SNAPSHOT May 21, 2018
wicket Updated project version to 9.0.0-SNAPSHOT May 21, 2018
.gitignore Document role based authorization for packages Mar 30, 2018
.travis.yml make CI build faster Aug 16, 2014
CHANGELOG-9.x New changelog file May 21, 2018
LICENSE Added license to root Apr 10, 2007
NOTICE removed all references to the old datetime module May 22, 2018
README.md removed all references to the old datetime module May 22, 2018
build-changelog.sh Updated release scripts across all versions Apr 25, 2016
build-versions.py Fix experimental wicket 7.x -> 8.x Jul 3, 2016
pom.xml WICKET-6581 Additional improvements to main pom.xml for weld dependen… Sep 25, 2018
release.sh Changed release script to use the right download links in the announc… Sep 18, 2018
wicket-assembly-all.xml tweak assembly to include core module Feb 21, 2011


What is Apache Wicket?

Apache Wicket is an open source, java, component based, web application framework. With proper mark-up/logic separation, a POJO data model, and a refreshing lack of XML, Apache Wicket makes developing web-apps simple and enjoyable again. Swap the boilerplate, complex debugging and brittle code for powerful, reusable components written with plain Java and HTML.

Apache Wicket can be found at: http://wicket.apache.org and is licensed under the Apache Software Foundation license, version 2.0.

Getting started

The Wicket project has several resources and projects where you can learn from, and get started quickly:

What is in this package

The archive you just downloaded and unpacked contains the source code and the jars of the core projects of Wicket. If you are just starting out, you probably only need to include wicket-util-x.jar, wicket-request-x.jar and wicket-core-x.jar, where x stands for the version. As a rule, use just the jars you need.

You will find the source code here:

|-- apidocs
|   |-- org
|   `-- resources
|-- lib
|-- licenses
`-- src
    |-- archetypes
    |-- testing
    |-- wicket
    |-- wicket-auth-roles
    |-- wicket-bean-validation
    |-- wicket-cdi
    |-- wicket-cdi-1.1
    |-- wicket-core
    |-- wicket-devutils
    |-- wicket-eclipse-settings
    |-- wicket-examples
    |-- wicket-experimental
    |   |-- wicket-metrics
    |   |-- wicket-http2
    |-- wicket-extensions
    |-- wicket-guice
    |-- wicket-ioc
    |-- wicket-jmx
    |-- wicket-native-websocket
    |-- wicket-objectssizeof-agent
    |-- wicket-request
    |-- wicket-spring
    |-- wicket-util
    |-- wicket-user-guide
    `-- wicket-velocity

Here is a list of projects in this distribution and what they do.

  • wicket: the core project, includes the framework and basic components;
  • wicket-extensions: contains utilities and more specialized components;
  • wicket-auth-roles: a basic authorization package based on roles;
  • wicket-jmx: registers JMX beans for managing things like your Wicket configuration and markup cache;
  • wicket-objectssizeof-agent: utility for making better estimates of object sizes in the JVM - most people probably never need this;
  • wicket-ioc: base project for IoC (aka DI) implementations such as Spring and Guice;
  • wicket-spring: support project for using Spring with Wicket and including Spring managed dependencies through using @SpringBean annotations;
  • wicket-guice: support project for using Google Guice with Wicket;
  • wicket-velocity: contains special components for rendering Velocity templates using Wicket components - most people probably don't need this, but it can be neat when you want to do CMS-like things;
  • wicket-examples: contains a basic component reference and many examples of how to use Wicket and Wicket components, including examples for sub projects such as wicket-spring, wicket-velocity and wicket-auth-roles.
  • wicket-devutils: provides small utilities which can help in development phase
  • wicket-bean-validation: validates beans with annotation based on javax.validation;
  • wicket-cdi: the context and dependency injection of the jee standard for wicket;
  • wicket-cdi-1.1: the context and dependency injection of the jee standard 1.1 for wicket;
  • wicket-devutils: some utils to help debugging wicket;
  • wicket-experimental: experimental implementations for wicket;
  • wicket-native-websocket: wicket's native web sockets integration for several servers;
  • wicket-request: lightweight project which contains all classes dealing with request handlers and so on;
  • wicket-util: the util project for wicket;
  • wicket-eclipse-settings: specifies Eclipse settings for a uniform development environment. Most notably the formatting rules;
  • wicket-user-guide: the user guide of wicket
  • wicket-metrics: collects data of a running wicket application
  • wicket-http2: http/2 push support


The easiest way of getting the dependencies of your Wicket based projects right is to use Apache Maven (http://maven.apache.org) with your projects and include the wicket dependencies you want is outlined in the wicket-quickstart. Maven will then take care of including the appropriate dependencies.

If you do not want to use maven, here is a break down of the dependencies you need. For the complete and precise reference see the wicket-parent pom.xml in the src/ folder.

Building Wicket from source

The Wicket distribution contains the final Wicket jar. You can use this directly in your applications. The Wicket project also uploads the source and JavaDoc jars as well as the final jar to the Maven repository used by the Maven build tool. So there is actually no specific need to build Wicket yourself from the distribution.

Building using Maven 2 or 3, change the working directory to src and either do:

  • mvn package

    creates wicket-x.y.z.jar in target/ subdirectory.

  • mvn install

    creates wicket-x.y.z.jar in target/ subdirectory and installs the file into your local Maven repository for use in other projects.

Migrating from 7.x

This file is a copy of the migration guide from available on our Wiki:


Getting help

  • Read the online documentation available on our website (http://wicket.apache.org)

  • Read the migration guide (migration-to-wicket-60.html)

  • Read the mailing archives available on Nabble, GMane and Apache

  • Send a complete message containing your problem, stacktrace and problem you're trying to solve to the user list (users@wicket.apache.org)

  • Ask a question on IRC at freenode.net, channel ##wicket


Wicket is distributed under the terms of the Apache Software Foundation license, version 2.0. The text is included in the file LICENSE in the root of the project.

Java/Application server requirements

Wicket requires at least Java 1.8. The application server for running your web application should adhere to the servlet specification version 3.1 or newer.

Cryptographic Software Notice

This distribution includes cryptographic software. The country in which you currently reside may have restrictions on the import, possession, use, and/or re-export to another country, of encryption software. BEFORE using any encryption software, please check your country's laws, regulations and policies concerning the import, possession, or use, and re-export of encryption software, to see if this is permitted. See http://www.wassenaar.org for more information.

The U.S. Government Department of Commerce, Bureau of Industry and Security (BIS), has classified this software as Export Commodity Control Number (ECCN) 5D002.C.1, which includes information security software using or performing cryptographic functions with asymmetric algorithms. The form and manner of this Apache Software Foundation distribution makes it eligible for export under the License Exception ENC Technology Software Unrestricted (TSU) exception (see the BIS Export Administration Regulations, Section 740.13) for both object code and source code.

The following provides more details on the included cryptographic software:

For encoding HTTP URL data (see org.apache.wicket.core.request.mapper.CryptoMapper) Wicket requires the Java Cryptography extensions (http://java.sun.com/javase/technologies/security/). Wicket does not include these libraries itself, but is designed to use them.