<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
        <meta charset="utf-8">
        <title>Wicket 1.4.1 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/2009/08/21/wicket-1.4.1-released.html -->
    	<li class=""><a href="/start/quickstart.html">Quick Start</a></li>
		<!-- /start/download.html || /news/2009/08/21/wicket-1.4.1-released.html -->
    	<li class=""><a href="/start/download.html">Download</a></li>
		<!-- /learn || /news/2009/08/21/wicket-1.4.1-released.html -->
    	<li class=""><a href="/learn">Documentation</a></li>
		<!-- /help || /news/2009/08/21/wicket-1.4.1-released.html -->
    	<li class=""><a href="/help">Support</a></li>
		<!-- /contribute || /news/2009/08/21/wicket-1.4.1-released.html -->
    	<li class=""><a href="/contribute">Contribute</a></li>
		<!-- /community || /news/2009/08/21/wicket-1.4.1-released.html -->
    	<li class=""><a href="/community">Community</a></li>
		<!-- /apache || /news/2009/08/21/wicket-1.4.1-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>Wicket 1.4.1 released</h1>
        </header>
        <section class="left">
            <div class="l-full">
    <p class="meta">21 Aug 2009</p>
    <p>The Apache Wicket project is proud to announce the first maintenance release
of Apache Wicket 1.4.</p>
<h3 id="download-apache-wicket-14">Download Apache Wicket 1.4</h3>
<p>You can download the release here:
<a href="http://www.apache.org/dyn/closer.cgi/wicket/1.4.1">http://www.apache.org/dyn/closer.cgi/wicket/1.4.1</a></p>
<p>Or use this in your Maven pom’s to upgrade to the new 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<span class="nt">&lt;/artifactId&gt;</span>
    <span class="nt">&lt;version&gt;</span>1.4.1<span class="nt">&lt;/version&gt;</span>
<span class="nt">&lt;/dependency&gt;</span></code></pre></figure>
<h3 id="changes">Changes</h3>
<p>The most notable change in this release is the transparent support for
multipart form submissions via Ajax. Wicket is now smart enough to submit a
form using a hidden iframe rather then the standard XMLHttpRequest if the
form contains file upload fields.</p>
<p>A complete list of changes can be found in our
<a href="https://issues.apache.org/jira/secure/IssueNavigator.jspa?reset=true&amp;mode=hide&amp;sorter/order=DESC&amp;sorter/field=priority&amp;pid=12310561&amp;fixfor=12314113">Jira</a>
instance.</p>
<p>We thank you for your patience and support.</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>
