<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
        <meta charset="utf-8">
        <title>Apache Wicket 8.0.0-M1 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/2016/07/25/wicket-8.0.0-M1-released.html -->
    	<li class=""><a href="/start/quickstart.html">Quick Start</a></li>
		<!-- /start/download.html || /news/2016/07/25/wicket-8.0.0-M1-released.html -->
    	<li class=""><a href="/start/download.html">Download</a></li>
		<!-- /learn || /news/2016/07/25/wicket-8.0.0-M1-released.html -->
    	<li class=""><a href="/learn">Documentation</a></li>
		<!-- /help || /news/2016/07/25/wicket-8.0.0-M1-released.html -->
    	<li class=""><a href="/help">Support</a></li>
		<!-- /contribute || /news/2016/07/25/wicket-8.0.0-M1-released.html -->
    	<li class=""><a href="/contribute">Contribute</a></li>
		<!-- /community || /news/2016/07/25/wicket-8.0.0-M1-released.html -->
    	<li class=""><a href="/community">Community</a></li>
		<!-- /apache || /news/2016/07/25/wicket-8.0.0-M1-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 8.0.0-M1 released</h1>
        </header>
        <section class="left">
            <div class="l-full">
    <p class="meta">25 Jul 2016</p>
    <p>The Apache Wicket PMC is proud to announce Apache Wicket 8.0.0-M1!</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 the first milestone of the major release of Wicket 8. 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
8.0.0.</p>
<h2 id="new-and-noteworthy">New and noteworthy</h2>
<p><strong>Beside a lot of changes which were implemented in Apache Wicket 7, the new
milestone of the major version of Apache Wicket 8 provides some 
great features.</strong></p>
<ul>
  <li>
    <p>Lambda support for Models and Components (See “Lambda Expressions” chapter in the user guide)</p>
  </li>
  <li>
    <p>NestedStringResourceLoader to replace nested keys within property files</p>
  </li>
  <li>
    <p>A lot of bugfixes and improvements</p>
  </li>
</ul>
<p><strong>Features which were almost ready and will be available with 8.0.0-M2</strong></p>
<ul>
  <li>PushBuilder API integration [WICKET-6194] 
(See “Wicket HTTP/2 Support (Experimental)” chapter in the user guide)</li>
</ul>
<p><strong>Features which were set to “won’t fix”</strong></p>
<ul>
  <li>Microservices support (decoupled component usage) [WICKET-6112]</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>8.0.0-M1<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/8.0.0-M1">8.0.0-M1 source download</a></li>
  <li>Binary: <a href="http://www.apache.org/dyn/closer.cgi/wicket/8.0.0-M1/binaries">8.0.0-M1 binary download</a></li>
</ul>
<h2 id="upgrading-from-earlier-versions">Upgrading from earlier versions</h2>
<p>If you upgrade from 8.y.z this release is a drop in replacement. If
you come from a version prior to 8.0.0, please read our Wicket 7
migration guide found at</p>
<ul>
  <li><a href="http://s.apache.org/wicket8migration">http://s.apache.org/wicket8migration</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-8.0.0-M1.zip:</p>
<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>-----BEGIN PGP SIGNATURE-----
Comment: GPGTools - https://gpgtools.org
iEYEABECAAYFAld5Gc8ACgkQJBX8W/xy/UV/wwCfa+/9cOB0KEOHB6vT41/ISIP/
udAAoNM46vtM+T2RYU5uSV08fWjzUjiV
=4pKN
-----END PGP SIGNATURE-----
</code></pre></div></div>
<p>Signature for apache-wicket-8.0.0-M1.tar.gz:</p>
<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>-----BEGIN PGP SIGNATURE-----
Comment: GPGTools - https://gpgtools.org
iEYEABECAAYFAld5Gc8ACgkQJBX8W/xy/UX5ngCgvckuOYDq+x6yVgTdDrhGskEz
cTwAn0jMYcafuw0aHDATKwbTv8U3uZX1
=9v6u
-----END PGP SIGNATURE-----
</code></pre></div></div>
<p>================================</p>
<h3 id="this-release">This Release</h3>
<h4 id="changelog-for-800-m1">CHANGELOG for 8.0.0-M1:</h4>
<h5 id="bug">Bug</h5>
<ul>
  <li>[WICKET-5836] - Update the version of clirr-maven-plugin (current 2.6.1)</li>
  <li>[WICKET-5993] - AjaxButton - image is not shown even though type=”image” is in html-template</li>
  <li>[WICKET-5994] - Mounted TemplateResourceReference throws org.apache.wicket.WicketRuntimeException when https is used</li>
  <li>[WICKET-5995] - “Range” header parsing is broken</li>
  <li>[WICKET-5996] - Mounted packages throw IllegalArgumentException when visiting base package url.</li>
  <li>[WICKET-5997] - Compatibility problem with Websphere liberty profile</li>
  <li>[WICKET-5999] - AjaxFormValidatingBehavior not updates initially hidden feedback component</li>
  <li>[WICKET-6001] - Exception raised while refreshing a page with queued components missing in the markup</li>
  <li>[WICKET-6002] - FileUploadField makes form-component models become null on submit</li>
  <li>[WICKET-6005] - WicketRuntimeException from AjaxPagingNavigator#onAjaxEvent</li>
  <li>[WICKET-6006] - ModalWindow.closeCurrent() causes 414 status error</li>
  <li>[WICKET-6007] - PageableListView constructor argument and set/getItemsPerPage are inconsistent</li>
  <li>[WICKET-6010] - Downloading filenames containing ‘,’ or ‘;’ gives problems</li>
  <li>[WICKET-6011] - NPE in case DebugBar is added to AjaxRequestTarget</li>
  <li>[WICKET-6013] - CLONE AjaxFallbackOrderByBorder wicketOrder[Up,Down,None] class missing in 7.1.0</li>
  <li>[WICKET-6014] - TransparentWebMarkupContainer breaks OnChangeAjaxBehavior for Select2</li>
  <li>[WICKET-6017] - Tests fail when executed with not expected locale</li>
  <li>[WICKET-6018] - TransparentWebMarkupContainer is not really “transparent”</li>
  <li>[WICKET-6020] - GuiceFieldValueFactory returns the NULL_SENTINEL from the cache</li>
  <li>[WICKET-6021] - ConcurrentModificationException in MarkupContainer#iterator#next</li>
  <li>[WICKET-6024] - Possible issue with Border and LoadableDetachableModel in 7.1.0</li>
  <li>[WICKET-6026] - Problem in detecting child id on nested <wicket:enclosure></wicket:enclosure></li>
  <li>[WICKET-6027] - Nested TransparentWebMarkupContainer, markup of inner component not found</li>
  <li>[WICKET-6028] - Detach called on enclosure component while it had a non-empty queue</li>
  <li>[WICKET-6031] - NPE in PackageResourceReference#getResource() when there is no request</li>
  <li>[WICKET-6032] - Wicket.Ajax.done() called twice on redirect</li>
  <li>[WICKET-6036] - Failure to process markup with nested tags inside a Label</li>
  <li>[WICKET-6037] - ModalWindow vulnerable to Javascript injection through title model</li>
  <li>[WICKET-6041] - Nested forms / parent FormComponents do not reflect updated model when nested form submitted</li>
  <li>[WICKET-6043] - Cannot set wicket:enclosure on queued component in ListView</li>
  <li>[WICKET-6044] - AjaxFormChoiceComponentUpdatingBehavior: Duplicate input values according to WICKET-5948</li>
  <li>[WICKET-6045] - ListView NullPointerException when viewSize is set explicitly</li>
  <li>[WICKET-6048] - German Translation for EqualInputValidator wrong</li>
  <li>[WICKET-6050] - Wicket Ajax (Wicket.From.serializeElement) causes 400 bad request</li>
  <li>[WICKET-6052] - CSS header contribution overlap</li>
  <li>[WICKET-6058] - Error in calculation of byte ranges</li>
  <li>[WICKET-6059] - TransparentWebMarkupContainer can not resolve autocomponents in its parent</li>
  <li>[WICKET-6062] - MockHttpSession should renew its id after invalidation</li>
  <li>[WICKET-6063] - Add support for WebSocketRequest#getUrl() and other properties which are available in the handshake request</li>
  <li>[WICKET-6064] - WebSocketResponse.sendRedirect could be supported with <ajax-response><redirect>...&lt;/&gt;&lt;/&gt;</redirect></ajax-response></li>
  <li>[WICKET-6065] - Calling http://examples7x.wicket.apache.org/resourceaggregation/ generate Internal error</li>
  <li>[WICKET-6068] - The key RangeValidator.exact is not mapped in Application_de.properties</li>
  <li>[WICKET-6069] - OnChangeAjaxBehavior does not work if the url contains a request parameter with same name as wicket id</li>
  <li>[WICKET-6076] - Problem with queued components and enclosure</li>
  <li>[WICKET-6078] - Problem with queued components and auto linking</li>
  <li>[WICKET-6079] - Problem with queued components and label</li>
  <li>[WICKET-6080] - Encapsulation of 3 enclosures leads to WicketRuntimeException</li>
  <li>[WICKET-6084] - ajax request failure handler receives incorrect arguments</li>
  <li>[WICKET-6085] - AjaxTimerBehavior with failure handler cause memory leak in browser</li>
  <li>[WICKET-6087] - Invalid AbstractRequestWrapperFactory.needsWrapper method scope: package - cannot create a custom implementation</li>
  <li>[WICKET-6088] - Problem with queued components and setting the model</li>
  <li>[WICKET-6091] - NPE in RequestLoggerRequestCycleListener when using native-websockets</li>
  <li>[WICKET-6094] - Find adequate ResourceReference with mount parameters</li>
  <li>[WICKET-6097] - JsonRequestLogger –&gt; JsonMappingException –&gt; StackOverflowError Infinite recursion</li>
  <li>[WICKET-6102] - StackoverflowError related to enclosures</li>
  <li>[WICKET-6108] - Closing a ModalWindow with jQuery 2.2.0 produces javascript errors</li>
  <li>[WICKET-6109] - Enclosure - “IllegalArgumentException: Argument ‘markup’ may not be null” after app restart</li>
  <li>[WICKET-6111] - Empty redirect on redirect to home page if home page already shown</li>
  <li>[WICKET-6116] - Exception ‘A child already exists’ when backing to a page with some markups in a Border</li>
  <li>[WICKET-6129] - IRequestCycleListener not notified of all executed handlers</li>
  <li>[WICKET-6131] - IndexOutOfBoundsException in org.apache.wicket.core. request.mapper.CryptoMapper.decryptEntireUrl</li>
  <li>[WICKET-6133] - Failing test SpringBeanWithGenericsTest in 7.3.0.0 SNAPSHOT</li>
  <li>[WICKET-6134] - NPE when using ListView with missing markup</li>
  <li>[WICKET-6135] - There is no good way to get POST body content</li>
  <li>[WICKET-6139] - AjaxButton forces rendering type=”button”</li>
  <li>[WICKET-6141] - Runtime Exception rendering ComponentTag with RelativePathPrefixHandler</li>
  <li>[WICKET-6151] - DebugBar/PageSizeDebugPanel throws NullPointerException (need wrapper exception with more detail)</li>
  <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-6161] - SecuritySettings.setEnforceMounts() should be applicable for all kind of pages</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-6171] - Problem with nested dialog with multipart form</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>
</ul>
<h5 id="improvement">Improvement</h5>
<ul>
  <li>[WICKET-5866] - Reconsider generics of IConverterLocator#getConverter()</li>
  <li>[WICKET-5920] - roll a version of ListDataProvider implementing ISortableDetachable model</li>
  <li>[WICKET-5950] - Model and GenericBaseModel could both implement IObjectClassAwareModel</li>
  <li>[WICKET-5969] - Please give us access to PageTable.index pageId queue</li>
  <li>[WICKET-5986] - NumberTextField<N> should use Models for minimum, maximum and step</N></li>
  <li>[WICKET-6015] - AjaxFallbackOrderByBorder/Link should support updateAjaxAttributes() idiom</li>
  <li>[WICKET-6019] - Remove ‘final’ modifier for Localizer#getStringIgnoreSettings() methods</li>
  <li>[WICKET-6023] - small tweak for component queuing for the AbstractRepeater</li>
  <li>[WICKET-6029] - Make Border’s methods consistent with commit f14e03f</li>
  <li>[WICKET-6046] - Wicket Quickstart Example Application shows deployment memory leak in Tomcat</li>
  <li>[WICKET-6051] - Improve performance of CssUrlReplacer</li>
  <li>[WICKET-6053] - Allow to reuse the same application instance in several tests</li>
  <li>[WICKET-6054] - Provide a factory method for the WebSocketResponse &amp; WebSocketRequest</li>
  <li>[WICKET-6060] - Deprecate org.apache.wicket.util.IProvider</li>
  <li>[WICKET-6061] - Improved PackageResource#getCacheKey</li>
  <li>[WICKET-6070] - Provide factory methods for WizardButtonBar buttons</li>
  <li>[WICKET-6072] - Improve the quickstart to make it easier to use JSR-356 web sockets</li>
  <li>[WICKET-6081] - Add “assertNotRequired” to the WicketTester</li>
  <li>[WICKET-6098] - Add logging to HttpSessionDataStore</li>
  <li>[WICKET-6100] - Upgrade jQuery to 1.12.3/2.2.3</li>
  <li>[WICKET-6103] - Synchronization on JSR 356 connection</li>
  <li>[WICKET-6104] - Rework AjaxFallback** components to use java.util.Optional for their #onEvent methods</li>
  <li>[WICKET-6106] - Propagate JSR 356 WebSocket connection error to a page</li>
  <li>[WICKET-6107] - Broadcast onClose event regardless of the JSR 356 WebSocket connection closed state</li>
  <li>[WICKET-6110] - Add a message to StalePageException for better debugging</li>
  <li>[WICKET-6113] - Improve ResourceStreamResource API by passing Attributes to #getResourceStream()</li>
  <li>[WICKET-6114] - FormComponentPanel#clearInput() should delegate to its FormComponent children</li>
  <li>[WICKET-6115] - Provide default implementation of IDetachable#detach() in IModel</li>
  <li>[WICKET-6117] - Make IGenericComponent a mixin/trait so it could be easily reused in custom components</li>
  <li>[WICKET-6118] - Deprecate org.apache.wicket.util.IContextProvider</li>
  <li>[WICKET-6122] - Add .map to the list of allowed file extensions in SecurePackageResourceGuard</li>
  <li>[WICKET-6123] - Remove ‘abstract’ from ChainingModel</li>
  <li>[WICKET-6127] - Add metrics for request duration</li>
  <li>[WICKET-6128] - Add metrics for currently active sessions</li>
  <li>[WICKET-6130] - Make it easier to override parts of SystemMapper</li>
  <li>[WICKET-6132] - AbstractChoice#getChoices() should be final</li>
  <li>[WICKET-6137] - ListenerInterfaceRequestHandler simplification</li>
  <li>[WICKET-6140] - Ajax should prevent updating components which are not on page</li>
  <li>[WICKET-6144] - Wicket-ajax parameter / header may be used to bypass proper exception handling</li>
  <li>[WICKET-6145] - Enable DeltaManager to replicate PageTable in Sessions</li>
  <li>[WICKET-6146] - Provide default implementation of IRequestHandler#detach()</li>
  <li>[WICKET-6152] - Allow to add more than one WebSocketBehavior in the component tree</li>
  <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-6184] - Remove form argument from AjaxButton and AjaxLink callbacks</li>
  <li>[WICKET-6188] - Use DynamicJQueryResourceReference by default</li>
  <li>[WICKET-6189] - Return Optional<T> from RequestCycle.find(Class<T>)</T></T></li>
</ul>
<h5 id="new-feature">New Feature</h5>
<ul>
  <li>[WICKET-5991] - Introduce models which use Java 8 supplier/consumer</li>
  <li>[WICKET-6025] - Read resource files with Java’s NIO API</li>
  <li>[WICKET-6042] - Implementation of ExternalImage component</li>
  <li>[WICKET-6120] - Wicket Metrics</li>
  <li>[WICKET-6121] - use lambdas for columns</li>
  <li>[WICKET-6193] - NestedStringResourceLoader - replaces nested keys within property files</li>
</ul>
<h5 id="tasks">Tasks</h5>
<ul>
  <li>[WICKET-5990] - Upgrade Jetty usage in Wicket tests/quickstart to Jetty 9.3.x</li>
  <li>[WICKET-6004] - Wicket 8 cleanup - TODOs and deprecated methods</li>
  <li>[WICKET-6057] - Upgrade commons-collections to 4.1</li>
  <li>[WICKET-6071] - Upgrade jQuery to 1.12 / 2.2.0</li>
  <li>[WICKET-6119] - Deprecate HtmlDocumentValidator</li>
  <li>[WICKET-6147] - Remove the support for the deprecated /wicket.properties and /META-INF/wicket/**.properties</li>
  <li>[WICKET-6150] - Deprecate org.apache.wicket.util.crypt.Base64 and use java.util.Base64</li>
</ul>
<h5 id="wish">Wish</h5>
<ul>
  <li>[WICKET-6067] - Provide an Ajax Behavior that prevents form submit on ENTER</li>
  <li>[WICKET-6095] - Multiline headers in DataTable</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>
