<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
        <meta charset="utf-8">
        <title>Apache Wicket 7.4.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/2016/07/21/wicket-7.4.0-released.html -->
    	<li class=""><a href="/start/quickstart.html">Quick Start</a></li>
		<!-- /start/download.html || /news/2016/07/21/wicket-7.4.0-released.html -->
    	<li class=""><a href="/start/download.html">Download</a></li>
		<!-- /learn || /news/2016/07/21/wicket-7.4.0-released.html -->
    	<li class=""><a href="/learn">Documentation</a></li>
		<!-- /help || /news/2016/07/21/wicket-7.4.0-released.html -->
    	<li class=""><a href="/help">Support</a></li>
		<!-- /contribute || /news/2016/07/21/wicket-7.4.0-released.html -->
    	<li class=""><a href="/contribute">Contribute</a></li>
		<!-- /community || /news/2016/07/21/wicket-7.4.0-released.html -->
    	<li class=""><a href="/community">Community</a></li>
		<!-- /apache || /news/2016/07/21/wicket-7.4.0-released.html -->
    	<li class=""><a href="/apache">Apache</a></li>
    </ul>
</nav>
        <div class="logo">
    <a href="/"><img src="/img/logo-apachewicket-white.svg" alt="Apache Wicket"></a>
</div>
    </div>
</div>
<main>
    <div class="l-container">
        <header class="l-full preamble">
            <h1>Apache Wicket 7.4.0 released</h1>
        </header>
        <section class="l-one-third right">
            <div id="toc" class="toc"><div id="toc-title"><h2>Table of Contents</h2></div><ul><li class="toc--level-1 toc--section-1"><a href="#new-and-noteworthy"><span class="toc-number">1</span> <span class="toc-text">New and noteworthy</span></a></li><li class="toc--level-1 toc--section-2"><a href="#using-this-release"><span class="toc-number">2</span> <span class="toc-text">Using this release</span></a></li><li class="toc--level-1 toc--section-3"><a href="#upgrading-from-earlier-versions"><span class="toc-number">3</span> <span class="toc-text">Upgrading from earlier versions</span></a><ul><li class="toc--level-2 toc--section-4"><a href="#this-release"><span class="toc-number">3.1</span> <span class="toc-text">This Release</span></a></li></ul></li></ul></div>
        </section>
        <section class="l-two-third left">
            <div class="l-full">
    <p class="meta">21 Jul 2016</p>
    <p>The Apache Wicket PMC is proud to announce Apache Wicket 7.4.0!</p>
<p>Apache Wicket is an open source Java component oriented web application
framework that powers thousands of web applications and web sites for
governments, stores, universities, cities, banks, email providers, and
more. You can find more about Apache Wicket at https://wicket.apache.org</p>
<p>This release marks another minor release of Wicket 7. We
use semantic versioning for the development of Wicket, and as such no
API breaks are present breaks are present in this release compared to
7.0.0.</p>
<h2 id="new-and-noteworthy">New and noteworthy</h2>
<ul>
  <li>
    <p>improves stateless AJAX support by integrating the Wicket Stuff
wicket-stateless module (WICKET-6183)</p>
  </li>
  <li>
    <p>improves compatibility for playing videos on iOS devices due to missing
media type in MediaComponent</p>
  </li>
  <li>
    <p>upgrades provided JQuery to 1.12.4 and 2.2.4</p>
  </li>
  <li>
    <p>improves compatibility with CGLIB when using wicket-jmx</p>
  </li>
</ul>
<h2 id="using-this-release">Using this release</h2>
<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>7.4.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/7.4.0">7.4.0 source download</a></li>
  <li>Binary: <a href="http://www.apache.org/dyn/closer.cgi/wicket/7.4.0/binaries">7.4.0 binary download</a></li>
</ul>
<h2 id="upgrading-from-earlier-versions">Upgrading from earlier versions</h2>
<p>If you upgrade from 7.y.z this release is a drop in replacement. If
you come from a version prior to 7.0.0, please read our Wicket 7
migration guide found at</p>
<ul>
  <li><a href="http://s.apache.org/wicket7migrate">http://s.apache.org/wicket7migrate</a></li>
</ul>
<p>Have fun!</p>
<p>— The Wicket team</p>
<p>================================</p>
<p>The signatures for the source release artefacts:</p>
<p>Signature for apache-wicket-7.4.0.zip:</p>
<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>-----BEGIN PGP SIGNATURE-----
Comment: GPGTools - https://gpgtools.org
iEYEABECAAYFAleLztAACgkQJBX8W/xy/UU1tACgnetUeJcjAGegJJ175UMjq2z3
QJAAnjLmcDjcUKGOd/hfBvdvXfo2RL2d
=sPs0
-----END PGP SIGNATURE-----
</code></pre></div></div>
<p>Signature for apache-wicket-7.4.0.tar.gz:</p>
<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>-----BEGIN PGP SIGNATURE-----
Comment: GPGTools - https://gpgtools.org
iEYEABECAAYFAleLzs8ACgkQJBX8W/xy/UVNogCgvokjiIH8p/tH3FO27qW0uHfY
pS8AoINM8PFic38Lbf55tNmeegzROZYx
=iTAS
-----END PGP SIGNATURE-----
</code></pre></div></div>
<p>================================</p>
<h3 id="this-release">This Release</h3>
<h4 id="changelog-for-740">CHANGELOG for 7.4.0:</h4>
<h5 id="bug">Bug</h5>
<ul>
  <li>[WICKET-6154] - Performance bottleneck when using KeyInSessionSunJceCryptFactory</li>
  <li>[WICKET-6155] - Newline in ModalWindow title</li>
  <li>[WICKET-6157] - WicketTester and application servers are destroying app differently</li>
  <li>[WICKET-6160] - Missing type for MediaComponent causing iOS devices not to be able to play videos</li>
  <li>[WICKET-6162] - Reload leads to unexpected RuntimeException ‘Unable to find component with id’</li>
  <li>[WICKET-6169] - NullPointerException accessing AbstractRequestLogger.getLiveSessions</li>
  <li>[WICKET-6170] - Wrong requestmapper used for cache decorated resources</li>
  <li>[WICKET-6172] - Inconsistent results from getTag[s]ByWicketId</li>
  <li>[WICKET-6173] - WICKET-6172 makes TagTester.createTagsByAttribute stop working</li>
  <li>[WICKET-6174] - Browser/Client info navigatorJavaEnabled property returns undefined</li>
  <li>[WICKET-6175] - Aautocomplete suggestion window is not closing in IE11</li>
  <li>[WICKET-6180] - JMX Initializer’s usage of CGLIB makes it impossible to upgrade to CGLIB 3.2.3</li>
  <li>[WICKET-6185] - Border body not reachable for visitors</li>
  <li>[WICKET-6187] - Enclosures rendered twice in derived component</li>
  <li>[WICKET-6191] - AjaxTimerBehavior will stop after ajax update of component it is attached to</li>
  <li>[WICKET-6196] - CheckingObjectOutputStream broken in Wicket 7</li>
  <li>[WICKET-6198] - Unable to disable a MultiFileUploadField</li>
  <li>[WICKET-6202] - Guide: 26.1 Page storing, section HttpSessionDataStore - example code is not correct</li>
  <li>[WICKET-6204] - Copy only the provided attributes for Ajax link inclusion</li>
</ul>
<h5 id="improvement">Improvement</h5>
<ul>
  <li>[WICKET-6153] - WicketTester’s MockHttpServletRequest doesn’t expose setLocale(aLocale) method</li>
  <li>[WICKET-6178] - MetaDataHeaderItem # generateString() should return specials characters escaped like StringEscapeUtils.escapeHtml(s) does</li>
  <li>[WICKET-6182] - Remove recreateBookmarkablePagesAfterExpiry check in Component#createRequestHandler</li>
  <li>[WICKET-6183] - Improve stateless support for AJAX</li>
  <li>[WICKET-6186] - Upgrade JQuery to 1.12.4/2.2.4</li>
</ul>
<h5 id="new-feature">New Feature</h5>
<ul>
  <li>[WICKET-6193] - NestedStringResourceLoader - replaces nested keys within property files</li>
</ul>
</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>
