<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
        <meta charset="utf-8">
        <title>Apache Wicket 6.20.0 released | Apache Wicket</title>
        <meta name="viewport" content="width=device-width, initial-scale=1" />

        <link rel="shortcut icon" href="/favicon.ico" type="image/vnd.microsoft.icon" />
        <link rel="stylesheet" href="/css/style.css" type="text/css" media="screen" />
        <link href="//maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet" />

		<script src="//code.jquery.com/jquery-1.11.3.min.js"></script>

    </head>

    <body class="">
        <div class="header default">
    <div class="l-menu-container">
<nav class="mainmenu">
    <ul>
		<!-- /start/quickstart.html || /news/2015/06/14/wicket-6.20.0-released.html -->
    	<li class=""><a href="/start/quickstart.html">Quick Start</a></li>
		<!-- /start/download.html || /news/2015/06/14/wicket-6.20.0-released.html -->
    	<li class=""><a href="/start/download.html">Download</a></li>
		<!-- /learn || /news/2015/06/14/wicket-6.20.0-released.html -->
    	<li class=""><a href="/learn">Documentation</a></li>
		<!-- /help || /news/2015/06/14/wicket-6.20.0-released.html -->
    	<li class=""><a href="/help">Support</a></li>
		<!-- /contribute || /news/2015/06/14/wicket-6.20.0-released.html -->
    	<li class=""><a href="/contribute">Contribute</a></li>
		<!-- /community || /news/2015/06/14/wicket-6.20.0-released.html -->
    	<li class=""><a href="/community">Community</a></li>
		<!-- /apache || /news/2015/06/14/wicket-6.20.0-released.html -->
    	<li class=""><a href="/apache">Apache</a></li>
    </ul>
</nav>
        <div class="logo">
    <a href="/"><img src="/img/logo-apachewicket.svg" alt="Apache Wicket"></a>
</div>
    </div>
</div>
<main>
    <div class="l-container">
        <header class="l-full preamble">
            <h1>Apache Wicket 6.20.0 released</h1>
        </header>
        <section class="left">
            <div class="l-full">
    <p class="meta">14 Jun 2015</p>
    <p>The Apache Wicket PMC is proud to announce Apache Wicket 6.20.0!</p>
<p>This release marks another minor release of Wicket 6. Starting
with Wicket 6 we use semantic versioning for the future development
of Wicket, and as such no API breaks are present in this release
compared to 6.0.0.</p>
<h3 id="using-this-release">Using this release</h3>
<p>With Apache Maven update your dependency to (and don’t forget to
update any other dependencies on Wicket projects to the same version):</p>
<figure class="highlight"><pre><code class="language-xml" data-lang="xml"><span class="nt">&lt;dependency&gt;</span>
<span class="nt">&lt;groupId&gt;</span>org.apache.wicket<span class="nt">&lt;/groupId&gt;</span>
<span class="nt">&lt;artifactId&gt;</span>wicket-core<span class="nt">&lt;/artifactId&gt;</span>
<span class="nt">&lt;version&gt;</span>6.20.0<span class="nt">&lt;/version&gt;</span>
<span class="nt">&lt;/dependency&gt;</span></code></pre></figure>
<p>Or download and build the distribution yourself, or use our
convenience binary package</p>
<ul>
  <li>Source: <a href="http://www.apache.org/dyn/closer.cgi/wicket/6.20.0">6.20.0 source download</a></li>
  <li>Binary: <a href="http://www.apache.org/dyn/closer.cgi/wicket/6.20.0/binaries">6.20.0 binary download</a></li>
</ul>
<h3 id="upgrading-from-earlier-versions">Upgrading from earlier versions</h3>
<p>If you upgrade from 6.y.z this release is a drop in replacement. If
you come from a version prior to 6.0.0, please read our Wicket 6
migration guide found at</p>
<ul>
  <li><a href="https://cwiki.apache.org/confluence/display/WICKET/Migration+to+Wicket+6.0">migration to Wicket 6</a></li>
</ul>
<p>Have fun!</p>
<p>— The Wicket team</p>
<h3 id="this-release">This release</h3>
<h4 id="changelog-for-6200">CHANGELOG for 6.20.0:</h4>
<p>The following changes were made in Wicket for this release.</p>
<h4 id="bug">Bug</h4>
<ul>
  <li>[WICKET-5790] - VariableInterpolator &amp; #getThrowExceptionOnMissingResource</li>
  <li>[WICKET-5814] - CryptoMapper clears feedback messages</li>
  <li>[WICKET-5816] - Apps can’t use Application.setName instead of WicketFilter for e.g. JMX names</li>
  <li>[WICKET-5822] - AjaxSelfUpdatingTimer stops working after ajax download</li>
  <li>[WICKET-5834] - NPE in DefaultPropertyResolver</li>
  <li>[WICKET-5835] - InlineEnclosure doesn’t call child.configure() before updating its visilbity</li>
  <li>[WICKET-5837] - JUnit tests may fail because of AbstractDefaultAjaxBehavior</li>
  <li>[WICKET-5838] - Last-modified header of external markup is ignored</li>
  <li>[WICKET-5841] - continueToOriginalDestination() discards new cookies</li>
  <li>[WICKET-5843] - CryptoMapper doesn’t work with context relative UrlResourceReferences</li>
  <li>[WICKET-5845] - AuthenticatedWebSession.get() returns a new session with signedIn false</li>
  <li>[WICKET-5850] - LazyInitProxyFactory causes NoClassDefFound org/apache/wicket/proxy/ILazyInitProxy in case of multimodule deployment</li>
  <li>[WICKET-5851] - PackageResourceTest#packageResourceGuard test fails under Windows</li>
  <li>[WICKET-5855] - RememberMe functionality seems to be broken after the change of the default crypt factory</li>
  <li>[WICKET-5857] - PagingNavigator invalid HTML (rel attribute on span tag)</li>
  <li>[WICKET-5858] - AjaxRequestTarget.focusComponent does not work in modal window</li>
  <li>[WICKET-5862] - Wicket Container visibility bug</li>
  <li>[WICKET-5864] - Multipart Ajax form submit does not release the channel in case of connection failure</li>
  <li>[WICKET-5869] - Kittencaptcha doesn’t calculate click y-coordinate correctly</li>
  <li>[WICKET-5870] - wicket-event-jquery.js: Wicket.Browser.isIE11() does not return boolean</li>
  <li>[WICKET-5873] - Resources served by Wicket are not compressable</li>
  <li>[WICKET-5874] - WicketTester TagTester does not work as expected when using non self closing tags</li>
  <li>[WICKET-5881] - NPE in FormComponent#updateCollectionModel in case of no converted input and unmodifiable collection</li>
  <li>[WICKET-5883] - Feedback messages not cleared for invisible/disabled form components on submit.</li>
  <li>[WICKET-5887] - wicket.xsd refers to non-existing xhtml.label:attlist</li>
  <li>[WICKET-5891] - Parsing of ChinUnionPay credit card should use the first 6 characters</li>
  <li>[WICKET-5893] - CookieUtils should use the original response when saving a cookie</li>
  <li>[WICKET-5895] - validateHeaders fails to detect missing head/body (regression)</li>
  <li>[WICKET-5900] - Add WicketTester support for IAjaxLink</li>
  <li>[WICKET-5910] - CGLib proxy should not intercept protected methods</li>
  <li>[WICKET-5911] - Re-rendering page after exception in render phase does not call onBeforeRender()</li>
  <li>[WICKET-5917] - Do not use jQuery’s $ in String snippets in Java code</li>
</ul>
<h4 id="improvement">Improvement</h4>
<ul>
  <li>[WICKET-5754] - (String)ResourceModel’s defaultValue could be an <code class="language-plaintext highlighter-rouge">IModel&lt;String&gt;</code></li>
  <li>[WICKET-5823] - DefaultAuthenticationStrategy should be modified to reduce copy/paste while extending it’s functionality</li>
  <li>[WICKET-5832] - Do not fail at CDI’s ConversationPropagator when running in non-http thread</li>
  <li>[WICKET-5840] - WicketTester doesn’t support #clickLink() for ExternalLink component</li>
  <li>[WICKET-5859] - Add Hebrew and Arabic translations</li>
  <li>[WICKET-5863] - Overiding disableCaching in ServletWebResponse is ignored when responce is buffered</li>
  <li>[WICKET-5865] - AjaxEditableLabel should implement IGenericComponent</li>
  <li>[WICKET-5872] - wicket extensions initializer.properties for greek language</li>
  <li>[WICKET-5875] - ComponentRenderer.renderComponent() unexpectedly produces a WicketRuntimeException when called with a nested Component which contains a nested wicket:message</li>
  <li>[WICKET-5894] - Support *.woff2 webfonts in SecurePackageResourceGuard as well</li>
  <li>[WICKET-5901] - Leaving veil when ajax processing ends with redirect</li>
  <li>[WICKET-5905] - allow listening to Ajax calls before scheduling</li>
  <li>[WICKET-5921] - Provide a default implementation of IModelComparator that always returns false</li>
</ul>
<h4 id="new-feature">New Feature</h4>
<ul>
  <li>[WICKET-5827] - Allow to apply multiple Javascript / CSS compressors</li>
  <li>[WICKET-5897] - Use the #isEnabled() method with validators</li>
  <li>[WICKET-5918] - Create an Image component that uses the new data: protocol (an InlineImage)</li>
  <li>[WICKET-5919] - Add support for CSRF prevention</li>
</ul>
<h4 id="task">Task</h4>
<ul>
  <li>[WICKET-5896] - Upgrade jQuery to latest stable versions (1.11.4 &amp; 2.1.3)</li>
</ul>
<p>Have fun!</p>
<p>— The Wicket team</p>
</div>
        </section>
    </div>
</main>
        <footer class="l-container">
            <div class="l-full">
   	<img src="/img/asf_logo_url.svg" style="height:90px; float:left; margin-right:10px;">
    <div style="margin-top:12px;">Copyright © 2020 — The Apache Software Foundation. Apache Wicket, Wicket, Apache, the Apache feather logo, and the Apache Wicket project logo are trademarks of The Apache Software Foundation. All other marks mentioned may be trademarks or registered trademarks of their respective owners.</div>
</div>
        </footer>
    </body>

</html>
