Wicket in Action

Apache Wicket 1.3.5 released!

22 October 2008, by dashorst

The Apache Wicket team is proud to announce the availability of the fifth maintenance release: Apache Wicket 1.3.5. A lot of bugs have been squashed and several improvements implemented. It is recommended you update to Wicket 1.3.5 at your earliest convenience.

Eager people click here to download the distribution, others can read further:

We thank you for your patience and support.

- The Wicket Team

Apache Wicket

Apache Wicket is a component oriented Java 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.

You can find out more about Apache Wicket on our website:

This release

This release is the fifth maintenance release for the Wicket 1.3 product. This release fixes several bugs and adds some minor improvements. You can find out about the changes at the bottom of this announcement.

Migrating from 1.2

If you are coming from Wicket 1.2, you really want to read our migration guide, found on the wiki:

Downloading the release

You can download the release from the official Apache mirror system, and you can find it through the following link:

For the Maven and Ivy fans out there: update your pom's to the following, and everything will be downloaded automatically:


Substitute the artifact ID with the projects of your liking to get the other projects.

Please note that we don't prescribe a Logging implementation for SLF4J. You need to specify yourself which one you prefer. Read more about SLF4J here: http://slf4j.org

Validating the release

The release has been signed by Martijn Dashorst, your release manager for today. The public key can be found in the KEYS file in the download area. Download the KEYS file only from the Apache website.

Instructions on how to validate the release can be found here.

Reporting bugs

In case you do encounter a bug, we would appreciate a report in our JIRA:

The distribution

In the distribution you will find a README. The README contains instructions on how to build from source yourself. You also find a CHANEGELOG-1.3 which contains a list of all things that have been fixed, added and/or removed since Wicket 1.3.0.

Release Notes - Wicket - Version 1.3.5


  • WICKET-1805 - Allow to change charset in StringRequestTarget: change CharSet used by the OutStream as well


  • WICKET-406 - form fields are reset when a file upload fails
  • WICKET-431 - Modal window can not be closed after session timeout
  • WICKET-622 - Component.toString() is unsafe
  • WICKET-625 - Wicket doesn't clean up properly when hot-deploying; hangs onto Class references.
  • WICKET-847 - setResponsePage redirects to wrong url
  • WICKET-861 - NumberFormatException with UrlCompressingWebRequestProcessor in WicketTester
  • WICKET-928 - Exception when clicking two times rapidly on the "next" button in a wizard
  • WICKET-1003 - Modal Window Does Not Close When Using IndicatingAjaxButton
  • WICKET-1104 - Modal window sticks to cursor on resize
  • WICKET-1120 - Problem closing a ModalWindow when used through an IFrame
  • WICKET-1161 - DiskPageStore should write the sessions index file to disk on destroy (from WicketFilter.destroy())
  • WICKET-1205 - Relative path calculations for inline paths in non-bookmarkable pages are incorrect on Tomcat.
  • WICKET-1346 - Generated HTML page contains incorrect content when "WicketMessage: No get method defined for class"
  • WICKET-1376 - Using AbstractAjaxTimerBehavior and mounting that page gives exception
  • WICKET-1413 - RequestUtils.toAbsolutePath() has a bug regarding to UTF-8 encoded page parameter.
  • WICKET-1425 - appendToInit() method is not called in class DatePicker
  • WICKET-1437 - Pagemap lock calculates timeout wrong
  • WICKET-1449 - './' appended to URL causes HTTP 404 in Internet Explorer (using root context)
  • WICKET-1450 - Ajax Re-render does not work after AbstractRestartResponseException()
  • WICKET-1471 - FeedbackPanel does not work properly in clustered environment
  • WICKET-1478 - AbortWithWebErrorCodeException in onBeforeRender causes WicketRuntimeException
  • WICKET-1494 - IntegerConvert cannot handle locale specific input/output
  • WICKET-1496 - DataTable.html does not validate (HTML 4.01/XHTML-Strict)
  • WICKET-1520 - JavaScriptStripper breaks prototype.js
  • WICKET-1535 - ExternalLink JavaScript not working in FF 3
  • WICKET-1577 - Int based PropertyModel throws convertion error
  • WICKET-1582 - WicketTester executeAjaxEvent onclick generating non-AJAX response
  • WICKET-1634 - ClassName needs conversion from Path to dotted notation in AutoLinkResolver
  • WICKET-1636 - WebPage.onAfterRender compares configurationType String using == operator, not equals method
  • WICKET-1648 - AbstractRequestTargetUrlCodingStrategy(line 174) throws confusing exception. It would be better redirect to 404-page in this case.
  • WICKET-1652 - Hard-coded quotes in xml prologue
  • WICKET-1664 - WebPage ERROR message
  • how to spy on text messages
  • WICKET-1679 - Memory leak in DiskPageStore
  • WICKET-1704 - ResourceStreamRequestTarget.configure set wrong ContentLength for non-ascii characters
  • WICKET-1713 - ModalWindow JavaScript does not restore tabIndexes correctly on IE 6
  • WICKET-1714 - PackagedTextTemplate does not load resource from application resource stream locator
  • WICKET-1719 - StringResourceModel may fail to format numbers using MessageFormat
  • WICKET-1724 - Clicking on AjaxLink (when used on a page mounted through QueryStringUrlCodingStrategy) after session-expiry throws a NullPointerException in IE and Safari (i.e. in BookmarkableListenerInterfaceRequestTarget.processEvents)
  • WICKET-1728 - remove obsolete check from LocalizedImageResource
  • WICKET-1730 - RfcCompliantEmailAddressValidator accepts whitespace and tab
  • WICKET-1731 - When used in inherited markup, tries to load a class with an illegal name
  • WICKET-1736 - Allow Access to AutoCompleteTextField AutoCompleteBehavior
  • WICKET-1737 - wicketTester does not find HTML mark-up if custom location is used.
  • WICKET-1740 - RequestCycle.urlFor modifies page parameters
  • WICKET-1746 - gecko: ajax javascript reference rendering problem
  • WICKET-1755 - In html Include component isAbsolute method returns false for an absolute path in unix-like systems
  • WICKET-1759 - Typo in method name: AttributeModifier#replaceAttibuteValue
  • WICKET-1765 - Extending from org.apache.wicket.Page causes StackOverflowError
  • WICKET-1769 - AjaxPagingNavigation usare results in AjaxPaginNavigator not found exception
  • WICKET-1773 - DiskPageStore-FileNotFoundException
  • WICKET-1777 - Overflow when setting Expires header in WebResource
  • WICKET-1780 - NPE in feedback panel
  • WICKET-1787 - AjaxSubmitLink in Internet Explorer does not work with Wicket's automatically genreated id's
  • WICKET-1788 - "Invalid procedure call or argument" on AJAX call with IE7
  • WICKET-1789 - Border fails to render if its contents are not visible by default
  • WICKET-1793 - Problem with submit
  • WICKET-1797 - Bug with default RadioChoice "for" attribute on label generation.
  • WICKET-1799 - wicket-extensions has unused reference to commons-collections.jar
  • WICKET-1806 - JavascriptStripper ignores context when looking for multiline comments
  • WICKET-1816 - Wicket 1.3.4 violates servlet standard, Glassfish spews warnings
  • WICKET-1818 - wicket:id attribute with a value containing spaces generates invalid markup
  • WICKET-1820 - Embedded forms do not support multipart
  • WICKET-1827 - AutoCompleteTextField shows completion list even if focus is not in the text field anymore
  • WICKET-1829 - MarkupComponentBorder skips first tag in MarkupStream
  • WICKET-1834 - Invalid Cookie Names for persistence used according to RFC (doesn't work in tomcat 6.x)
  • WICKET-1839 - IAjaxIndicatorAware/WicketAjaxIndicatorAppender with AutoCompleteTextField doesn't work
  • WICKET-1843 - Disabling RadioGroup via authorization strategy does not disable contained Radio buttons
  • WICKET-1846 - Dutch text message for NumberValidator incorrect
  • WICKET-1857 - Unfound markup information is not entirely cached even in deployment mode


  • WICKET-1502 - Slow opening of ModalWindow for complex pages
  • WICKET-1622 - expose the IItemFactory in RefreshingView
  • WICKET-1638 - Wickets unique IDs cause problems for automated testing
  • WICKET-1692 - on Java 6+ DatePicker.localize should use DateFormatSymbols.getInstance(Locale) instead of new DateFormatSymbols(Locale) to support DateFormatSymbolsProviders
  • WICKET-1748 - 304 Last Modified responses should include an Expires header
  • WICKET-1770 - PagingNavigation's javadoc contains malformed html snippet
  • WICKET-1782 - Protection against CSRF (cross-site request forgery) attacks
  • WICKET-1795 - Make it possible for to encode unicode strings in component
  • WICKET-1801 - Make AbstractDefaultAjaxBehavior.findIndicatorId() protected
  • WICKET-1802 - Propertyresolver could be more informative
  • WICKET-1810 - StringRequestTarget is bloated and needs some care
  • WICKET-1830 - Include Component Path in Generated Markup
  • WICKET-1840 - Defaults to ReloadingWicketFilter in maven's archetype and quickstart
  • WICKET-1844 - Wizard button implementations should not be final

New Feature

  • WICKET-1716 - make autocompleter more customizable
  • WICKET-1720 - Add clearLocalizerCache to Application JMX bean


  • WICKET-399 - Make RestartResponseAtInterceptPageException with a SignIn-type page work correctly from AjaxFallbackLink
  • WICKET-1758 - Make DiskPageStore#getSessionFolder protected (rather than private)