<!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-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="l-one-third right">
        </section>
        <section class="l-two-third 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>
