Wicket 1.2 is no longer supported. For supported versions go to Apache Wicket.

Welcome to Wicket

With proper mark-up/logic separation, a POJO data model, and a refreshing lack of XML, Wicket makes developing web-apps in Java simple and enjoyable again. Swap the boilerplate, complex debugging and brittle code for powerful, reusable components written with plain Java and HTML.

Wicket joins Apache Software Foundation

Wicket has now joined the Apache Software Foundation. This site is used only for legacy support on older versions of Wicket released prior to the move to Apache. If you are new to Wicket, please continue to our official home.

Wicket 1.2

Wicket 1.2 is the last distribution released outside Apache and as such is not endorsed by nor affiliated with the Apache Software Foundation. Newer versions of Wicket are developed at the Apache Software Foundation, so if you are a new user, or looking for a new version of Wicket, please refer to Apache Wicket.

Wicket is released under the Apache License, Version 2.0 .

Latest News

March 23rd, 2008 - Wicket 1.2.7 released

The Wicket team announces the last maintenance release of Wicket 1.2: Wicket 1.2.7. This release marks the end-of-life for the non-Apache product branch. This release fixes the remaining issues for Wicket 1.2. For future support we ask you to upgrade to Apache Wicket 1.3 or newer. This release of the Wicket project is not endorsed or approved by the Apache Software Foundation. The Apache Software Foundation is in no way affiliated with this release. Below are the release notes for Wicket 1.2.7. Have fun! - the Wicket team

Release Notes - Wicket - Version 1.2.7


  • [WICKET-117] - Page expired using ajax
  • [WICKET-311] - race condition between wicket.session.pagemap.LeastRecentlyAccessedEvictionStrategy and Session.getPage()
  • [WICKET-312] - AjaxFormComponentUpdatingBehavior doesn't call onError when FormComponent is not valid
  • [WICKET-349] - ListView can't undo changes to model
  • [WICKET-427] - WebRequestCodingStrategy.urlCodingStrategyForPath() passes null as key
  • [WICKET-487] - Buggy behaviour in PageMap.access(IPageMapEntry,int). Wicket1.2.4
  • [WICKET-511] - New ServletWebRequest.getParameterMap() implementation changed between 1.2.5 and 1.2.6
  • [WICKET-524] - ClassCastException in WebRequestCodingStrategy
  • [WICKET-540] - ServletWebRequest.getContextPath() ignores ContextPath as set by user (accesses HttpServletRequest directly)
  • [WICKET-546] - SubmitLink issue : Need for handling user's own onclick javascript call + default && modification in onComponentTag call.
  • [WICKET-571] - AjaxLinks throws java.lang.ClassCastException
  • [WICKET-593] - equals() in ResourceStreamRequestTarget compares the wrong filename
  • [WICKET-623] - Backport call to super onComponentTag in ExternalLink
  • [WICKET-642] - Need to escape select html option value
  • [WICKET-828] - Using form method=get does not work
  • [WICKET-943] - java.lang.NullPointerException at wicket.markup.html.list.ListView.renderItem(
  • [WICKET-1076] - SubmitLink component does not render markup id


  • [WICKET-1145] - Patch for allowing <input type="search"/> to be serialized

New Feature

  • [WICKET-786] - Add "deny" capability to AuthorizeAction
See the news archive for more (older) news.