You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by da...@apache.org on 2011/09/07 23:35:45 UTC

svn commit: r1166410 - in /wicket/common/site/trunk: ./ _posts/ _site/ _site/2011/08/23/ _site/2011/09/ _site/2011/09/07/

Author: dashorst
Date: Wed Sep  7 21:35:45 2011
New Revision: 1166410

URL: http://svn.apache.org/viewvc?rev=1166410&view=rev
Log:
Wicket 1.5 released

Added:
    wicket/common/site/trunk/_posts/2011-09-07-wicket-1.5-released.md
    wicket/common/site/trunk/_site/2011/09/
    wicket/common/site/trunk/_site/2011/09/07/
    wicket/common/site/trunk/_site/2011/09/07/wicket-1.5-released.html
Modified:
    wicket/common/site/trunk/_posts/2011-08-23-cve-2011-2712.md
    wicket/common/site/trunk/_site/2011/08/23/cve-2011-2712.html
    wicket/common/site/trunk/_site/atom.xml
    wicket/common/site/trunk/_site/index.html
    wicket/common/site/trunk/index.md

Modified: wicket/common/site/trunk/_posts/2011-08-23-cve-2011-2712.md
URL: http://svn.apache.org/viewvc/wicket/common/site/trunk/_posts/2011-08-23-cve-2011-2712.md?rev=1166410&r1=1166409&r2=1166410&view=diff
==============================================================================
--- wicket/common/site/trunk/_posts/2011-08-23-cve-2011-2712.md (original)
+++ wicket/common/site/trunk/_posts/2011-08-23-cve-2011-2712.md Wed Sep  7 21:35:45 2011
@@ -14,18 +14,17 @@ Apache Wicket 1.4.x
 Apache Wicket 1.3.x and 1.5-RCx are not affected
 
 Description:
-With multi window support application configuration and special query parameters it
-is possible to execute any kind of JavaScript on a site running with the
-affected versions.
+With multi window support application configuration and special query parameters it is possible to execute any kind of JavaScript on a site running with the affected versions.
 
 Mitigation:
 Either disable multi window support with
 
-MyApp.java
-{% highlight xml %}
-public void init() {
-    super.init();
-    getPageSettings.setAutomaticMultiWindowSupport(false);
+{% highlight java %}
+public class MyApp extends WebApplication { 
+    public void init() {
+        super.init();
+        getPageSettings.setAutomaticMultiWindowSupport(false);
+    }
 }
 {% endhighlight %}
 

Added: wicket/common/site/trunk/_posts/2011-09-07-wicket-1.5-released.md
URL: http://svn.apache.org/viewvc/wicket/common/site/trunk/_posts/2011-09-07-wicket-1.5-released.md?rev=1166410&view=auto
==============================================================================
--- wicket/common/site/trunk/_posts/2011-09-07-wicket-1.5-released.md (added)
+++ wicket/common/site/trunk/_posts/2011-09-07-wicket-1.5-released.md Wed Sep  7 21:35:45 2011
@@ -0,0 +1,124 @@
+---
+layout: post
+title: Apache Wicket releases Wicket 1.5
+---
+The Apache Wicket team is proud to announce the immediate availability of the newest release of their component oriented open source Java web framework. Apache Wicket 1.5 has been in development for the last two years and brings many improvements over previous versions.
+
+Downloading Apache Wicket 1.5
+-----------------------------
+
+You can download the release here: [http://www.apache.org/dyn/closer.cgi/wicket/1.5.0][1]
+
+Or use this in your Maven POM to upgrade to the new version:
+
+{% highlight xml %}
+<dependency>
+    <groupId>org.apache.wicket</groupId>
+    <artifactId>wicket-core</artifactId>
+    <version>1.5.0</version>
+</dependency>
+{% endhighlight %}
+
+Please note that Wicket's main artifact ID has been renamed to `wicket-core`.
+
+You will need to upgrade all modules (i.e. wicket, wicket-extensions, wicket-ioc, wicket-spring, etc) to 1.5.0. **It is not possible to mix previous versions of Wicket with modules of this release.**
+
+Most notable changes
+--------------------
+
+With this release the Wicket team has revised many of its internals. A short list:
+
+ - HTML5 components added: `EmailTextField`, `NumberTextField`, `UrlTextField` and `RangeTextField`
+ - New inter-component events (explained below)
+ - Minimum required servlet API is servlet-api 2.5
+ - All standard validators now extend `Behavior` to allow for client side validations
+ - `IBehavior` has been removed and `AbstractBehavior` has been deprecated, you should now extend `Behavior` instead
+ - Simplified the [request cycle processing][3] and made it more extensible
+ - URL handling is now in one place
+ - Wicket's rendering code has been greatly simplified
+ - Improved browser [caching support][4]
+ - ClientSideImageMap replaces old ImageMap
+ - Better support for running behind proxies with `x-forwarded-for` header
+ - [Request cycle listeners][3] make it easier to integrate frameworks in your Wicket application
+ - Consistent naming: methods with `Javascript` in the name have been renamed to use proper capitalization: `JavaScript`
+ - Switching to HTTPS is as simple as configuring a new root mapper to make Wicket HTTPS aware and annotating a page with @RequireHttps
+
+A longer list of changes and improvements can be found in our [migration guide][2]. 
+
+### Inter-component events ###
+
+Wicket 1.5 offers a simple, yet flexible, way for component to communicate with each other in a decoupled manner. The two major interfaces that facilitate this are:
+
+{% highlight java %}
+/**
+ * Objects that can send events
+ */
+public interface IEventSource {
+    <T> void send(IEventSink sink, Broadcast broadcast, T payload);
+}
+{% endhighlight %}
+
+and
+
+{% highlight java %}
+/**
+ * Objects that can receive events
+ */
+public interface IEventSink
+{
+    /**
+     * Called when an event is sent to this sink
+     */
+    void onEvent(IEvent<?> event);
+}
+{% endhighlight %}
+
+The classes that implement these interfaces, and can thus participate in the event mechanism are: `Component`, `RequestCycle`, `Session`, and `Application`.
+
+The mechanism allows for different event broadcast methods defined here:
+
+{% highlight java %}
+/**
+ * Defines the event broadcast type.
+ */
+public enum Broadcast {
+    BREADTH,
+    DEPTH,
+    BUBBLE,
+    EXACT;
+}
+{% endhighlight %}
+
+There is an example in wicket-examples which demonstrates the usage of this.
+
+Applications can register custom event dispatchers in `FrameworkSettings`; the dispatchers can be used to build custom event delivery mechanisms. For example a custom `IEventDispatcher` mechanism can route events to annotated methods, for example:
+
+{% highlight java %}
+public class MyComponent extends Component {
+    @OnEvent
+    private void onUserAdded(UserAddedEvent event) {...}
+}
+{% endhighlight %}
+
+where `UserAddedEvent` is the event payload object.
+
+The default `Component#onEvent` method will be called even if custom dispatchers are registered.
+
+A default event is raised whenever Wicket begins to create an AJAX response. The payload of the event is the `AjaxRequestTarget` used for event. Sample implementation:
+
+{% highlight java %}
+// component that always adds itself to the ajax response
+public class MyComponent extends Component {
+    public void onEvent(IEvent event) {
+        if (event.getPayload() instanceof AjaxRequestTarget) {
+            ((AjaxRequestTarget)event.getPayload()).add(this);
+         }
+    }
+}
+{% endhighlight %}
+
+
+[1]: http://www.apache.org/dyn/closer.cgi/wicket/1.5.0
+[2]: http://s.apache.org/wicket-1.5-migration
+[3]: https://cwiki.apache.org/WICKET/requestcycle-in-wicket-15.html
+[4]: https://cwiki.apache.org/WICKET/caching-in-wicket-15.html

Modified: wicket/common/site/trunk/_site/2011/08/23/cve-2011-2712.html
URL: http://svn.apache.org/viewvc/wicket/common/site/trunk/_site/2011/08/23/cve-2011-2712.html?rev=1166410&r1=1166409&r2=1166410&view=diff
==============================================================================
--- wicket/common/site/trunk/_site/2011/08/23/cve-2011-2712.html (original)
+++ wicket/common/site/trunk/_site/2011/08/23/cve-2011-2712.html Wed Sep  7 21:35:45 2011
@@ -153,12 +153,12 @@
 <p>Description: With multi window support application configuration and special query parameters it is possible to execute any kind of JavaScript on a site running with the affected versions.</p>
 
 <p>Mitigation: Either disable multi window support with</p>
-
-<p>MyApp.java</p>
-<div class='highlight'><pre><code class='xml'>public void init() {
-    super.init();
-    getPageSettings.setAutomaticMultiWindowSupport(false);
-}
+<div class='highlight'><pre><code class='java'><span class='kd'>public</span> <span class='kd'>class</span> <span class='nc'>MyApp</span> <span class='kd'>extends</span> <span class='n'>WebApplication</span> <span class='o'>{</span> 
+    <span class='kd'>public</span> <span class='kt'>void</span> <span class='nf'>init</span><span class='o'>()</span> <span class='o'>{</span>
+        <span class='kd'>super</span><span class='o'>.</span><span class='na'>init</span><span class='o'>();</span>
+        <span class='n'>getPageSettings</span><span class='o'>.</span><span class='na'>setAutomaticMultiWindowSupport</span><span class='o'>(</span><span class='kc'>false</span><span class='o'>);</span>
+    <span class='o'>}</span>
+<span class='o'>}</span>
 </code></pre>
 </div>
 <p>or upgrade to <a href='http://wicket.apache.org/2011/08/09/wicket-1.4.18-released.html'>Apache Wicket 1.4.18</a> or <a href='http://wicket.apache.org/2011/06/25/wicket-1.5-RC5.1-released.html'>Apache Wicket 1.5-RC5.1</a></p>

Added: wicket/common/site/trunk/_site/2011/09/07/wicket-1.5-released.html
URL: http://svn.apache.org/viewvc/wicket/common/site/trunk/_site/2011/09/07/wicket-1.5-released.html?rev=1166410&view=auto
==============================================================================
--- wicket/common/site/trunk/_site/2011/09/07/wicket-1.5-released.html (added)
+++ wicket/common/site/trunk/_site/2011/09/07/wicket-1.5-released.html Wed Sep  7 21:35:45 2011
@@ -0,0 +1,275 @@
+<!DOCTYPE html>
+<html>
+<head>
+    <title>Apache Wicket - Apache Wicket releases Wicket 1.5</title>
+
+	<link rel="stylesheet" href="/css/screen.css" type="text/css" media="screen" />
+
+    <!--[if lt ie 7]>
+	<link rel="stylesheet" href="/css/ie.css" type="text/css" media="screen" />
+    <![endif]-->
+    <link rel="shortcut icon" href="/favicon.ico" type="image/vnd.microsoft.icon" />
+	<link rel="alternate" type="application/atom+xml" href="/atom.xml" />
+	<meta http-equiv="content-type" content="text/html;charset=utf-8" />
+</head>
+<body>
+<div id="container">
+    <div id="content">
+        <div id="header"><a href="/"><h1 id="logo"><span>Apache Wicket</span></h1></a></div>
+		<div id="navigation">
+	<h5><a name="Navigation-Wicket"></a>Meet Wicket</h5>
+	<ul>
+		<li>
+			<a href="/" title="Index">Home</a>
+		</li>
+		<li>
+			<a href="/meet/introduction.html" title="Introduction">Introduction</a>
+		</li>
+		<li>
+			<a href="/meet/features.html" title="Features">Features</a>
+		</li>
+		<li>
+			<a href="/meet/buzz.html" title="Buzz">Buzz</a>
+		</li>
+		<li>
+			<a href="/meet/vision.html" title="Vision">Vision</a>
+		</li>
+		<li>
+			<a href="/meet/blogs.html" title="Blogs">Blogs</a>
+		</li>
+	</ul>
+	<h5>
+		<a name="Navigation-GettingStarted" id="Navigation-GettingStarted"></a>Get Started
+	</h5>
+	<ul>
+		<li>
+			<a href="/start/download.html" title="Download Wicket">Download Wicket</a>
+		</li>
+		<li>
+			<a href="/start/quickstart.html" title="Getting started via a Maven Archetype">Quickstart</a>
+		</li>
+		<li>
+			<a href="http://www.jweekend.com/dev/LegUp" rel="nofollow">More archetypes</a>
+		</li>
+		<li>
+			<a href="/help" title="Get help">Get help</a>
+		</li>
+	</ul>
+	<h5>
+		<a name="Navigation-Documentation" id="Navigation-Documentation"></a>Learn
+	</h5>
+	<ul>
+		<li>
+			<a href="/learn/examples" title="Examples">Examples</a>
+		</li>
+		<li>
+			<a href="http://wicketstuff.org/wicket14/compref/">Components</a>
+		</li>
+		<li>
+			<a href="/learn/projects/" title="Projects extending basic Wicket">Projects</a>
+		</li>
+		<li>
+			<a href="http://cwiki.apache.org/WICKET">Wiki</a>
+		</li>
+		<li>
+			<a href="http://cwiki.apache.org/WICKET/reference-library.html">Reference guide</a>
+		</li>
+		<li>
+			<a href="/learn/books" title="Books">Books</a>
+		</li>
+		<li>
+			<a href="/learn/ides.html" title="IDEs">IDE plugins</a>
+		</li>
+	</ul>
+	<h5>
+		<a name="Navigation-Releases" id="Navigation-Releases"></a>Releases
+	</h5>
+	<ul>
+		<li>
+			<a href="http://www.apache.org/dyn/closer.cgi/wicket/1.4.18">Wicket 1.4</a>
+			(<a href="http://wicket.apache.org/apidocs/1.4" title="JavaDocs of the latest stable release - 1.4.x">docs</a>)
+		</li>
+		<li>
+			<a href="http://www.apache.org/dyn/closer.cgi/wicket/1.3.7">Wicket 1.3</a>
+			(<a href="http://wicket.apache.org/apidocs/1.3" title="JavaDocs of Apache Wicket 1.3.x">docs</a>)
+		</li>
+		<li>
+			<a href="http://wicket.sf.net/wicket-1.2" class="external-link" rel="nofollow">Wicket 1.2</a>
+		</li>
+		<li>
+			<a href="http://wicket.sf.net/wicket-1.1" class="external-link" rel="nofollow">Wicket 1.1</a>
+		</li>
+		<li>
+			<a href="http://wicket.sf.net/wicket-1.0" class="external-link" rel="nofollow">Wicket 1.0</a>
+		</li>
+	</ul>
+	<h5>
+		<a name="Navigation-Developers" id="Navigation-Developers"></a>Contribute
+	</h5>
+	<ul>
+		<li>
+			<a href="/contribute/write.html" title="Writing documentation">Writing docs</a>
+		</li>
+		<li>
+			<a href="/contribute/build.html" title="Building from SVN">Build Wicket</a>
+		</li>
+		<li>
+			<a href="/contribute/patch.html" title="Provide a patch">Provide a patch</a>
+		</li>
+		<li>
+			<a href="/contribute/release.html" title="Release Wicket">Release Wicket</a>
+		</li>
+		<li>
+			<a href="http://fisheye6.atlassian.com/browse/wicket" title="SVN Overview" class="external-link" rel="nofollow">Fisheye</a>
+		</li>
+	</ul>
+	<h5>
+		<a name="Navigation-Apache" id="Navigation-Apache"></a>Apache
+	</h5>
+	<ul>
+		<li>
+			<a href="http://www.apache.org/" class="external-link" rel="nofollow">Apache</a>
+		</li>
+		<li>
+			<a href="http://www.apache.org/licenses/" class="external-link" rel="nofollow">License</a>
+		</li>
+		<li>
+			<a href="http://www.apache.org/foundation/sponsorship.html" class="external-link" rel="nofollow">Sponsorship</a>
+		</li>
+		<li>
+			<a href="http://apache.org/foundation/thanks.html" class="external-link" rel="nofollow">Thanks</a>
+		</li>
+	</ul>
+</div>
+
+		<div id="contentbody">
+			<h1>Apache Wicket releases Wicket 1.5</h1>
+			<p>The Apache Wicket team is proud to announce the immediate availability of the newest release of their component oriented open source Java web framework. Apache Wicket 1.5 has been in development for the last two years and brings many improvements over previous versions.</p>
+
+<h2 id='downloading_apache_wicket_15'>Downloading Apache Wicket 1.5</h2>
+
+<p>You can download the release here: <a href='http://www.apache.org/dyn/closer.cgi/wicket/1.5.0'>http://www.apache.org/dyn/closer.cgi/wicket/1.5.0</a></p>
+
+<p>Or use this in your Maven POM to upgrade to the new version:</p>
+<div class='highlight'><pre><code class='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>1.5.0<span class='nt'>&lt;/version&gt;</span>
+<span class='nt'>&lt;/dependency&gt;</span>
+</code></pre>
+</div>
+<p>Please note that Wicket&#8217;s main artifact ID has been renamed to <code>wicket-core</code>.</p>
+
+<p>You will need to upgrade all modules (i.e. wicket, wicket-extensions, wicket-ioc, wicket-spring, etc) to 1.5.0. <strong>It is not possible to mix previous versions of Wicket with modules of this release.</strong></p>
+
+<h2 id='most_notable_changes'>Most notable changes</h2>
+
+<p>With this release the Wicket team has revised many of its internals. A short list:</p>
+
+<ul>
+<li>HTML5 components added: <code>EmailTextField</code>, <code>NumberTextField</code>, <code>UrlTextField</code> and <code>RangeTextField</code></li>
+
+<li>New inter-component events (explained below)</li>
+
+<li>Minimum required servlet API is servlet-api 2.5</li>
+
+<li>All standard validators now extend <code>Behavior</code> to allow for client side validations</li>
+
+<li><code>IBehavior</code> has been removed and <code>AbstractBehavior</code> has been deprecated, you should now extend <code>Behavior</code> instead</li>
+
+<li>Simplified the <a href='https://cwiki.apache.org/WICKET/requestcycle-in-wicket-15.html'>request cycle processing</a> and made it more extensible</li>
+
+<li>URL handling is now in one place</li>
+
+<li>Wicket&#8217;s rendering code has been greatly simplified</li>
+
+<li>Improved browser <a href='https://cwiki.apache.org/WICKET/caching-in-wicket-15.html'>caching support</a></li>
+
+<li>ClientSideImageMap replaces old ImageMap</li>
+
+<li>Better support for running behind proxies with <code>x-forwarded-for</code> header</li>
+
+<li><a href='https://cwiki.apache.org/WICKET/requestcycle-in-wicket-15.html'>Request cycle listeners</a> make it easier to integrate frameworks in your Wicket application</li>
+
+<li>Consistent naming: methods with <code>Javascript</code> in the name have been renamed to use proper capitalization: <code>JavaScript</code></li>
+
+<li>Switching to HTTPS is as simple as configuring a new root mapper to make Wicket HTTPS aware and annotating a page with @RequireHttps</li>
+</ul>
+
+<p>A longer list of changes and improvements can be found in our <a href='http://s.apache.org/wicket-1.5-migration'>migration guide</a>.</p>
+
+<h3 id='intercomponent_events'>Inter-component events</h3>
+
+<p>Wicket 1.5 offers a simple, yet flexible, way for component to communicate with each other in a decoupled manner. The two major interfaces that facilitate this are:</p>
+<div class='highlight'><pre><code class='java'><span class='cm'>/**</span>
+<span class='cm'> * Objects that can send events</span>
+<span class='cm'> */</span>
+<span class='kd'>public</span> <span class='kd'>interface</span> <span class='nc'>IEventSource</span> <span class='o'>{</span>
+    <span class='o'>&lt;</span><span class='n'>T</span><span class='o'>&gt;</span> <span class='kt'>void</span> <span class='n'>send</span><span class='o'>(</span><span class='n'>IEventSink</span> <span class='n'>sink</span><span class='o'>,</span> <span class='n'>Broadcast</span> <span class='n'>broadcast</span><span class='o'>,</span> <span class='n'>T</span> <span class='n'>payload</span><span class='o'>);</span>
+<span class='o'>}</span>
+</code></pre>
+</div>
+<p>and</p>
+<div class='highlight'><pre><code class='java'><span class='cm'>/**</span>
+<span class='cm'> * Objects that can receive events</span>
+<span class='cm'> */</span>
+<span class='kd'>public</span> <span class='kd'>interface</span> <span class='nc'>IEventSink</span>
+<span class='o'>{</span>
+    <span class='cm'>/**</span>
+<span class='cm'>     * Called when an event is sent to this sink</span>
+<span class='cm'>     */</span>
+    <span class='kt'>void</span> <span class='nf'>onEvent</span><span class='o'>(</span><span class='n'>IEvent</span><span class='o'>&lt;?&gt;</span> <span class='n'>event</span><span class='o'>);</span>
+<span class='o'>}</span>
+</code></pre>
+</div>
+<p>The classes that implement these interfaces, and can thus participate in the event mechanism are: <code>Component</code>, <code>RequestCycle</code>, <code>Session</code>, and <code>Application</code>.</p>
+
+<p>The mechanism allows for different event broadcast methods defined here:</p>
+<div class='highlight'><pre><code class='java'><span class='cm'>/**</span>
+<span class='cm'> * Defines the event broadcast type.</span>
+<span class='cm'> */</span>
+<span class='kd'>public</span> <span class='kd'>enum</span> <span class='n'>Broadcast</span> <span class='o'>{</span>
+    <span class='n'>BREADTH</span><span class='o'>,</span>
+    <span class='n'>DEPTH</span><span class='o'>,</span>
+    <span class='n'>BUBBLE</span><span class='o'>,</span>
+    <span class='n'>EXACT</span><span class='o'>;</span>
+<span class='o'>}</span>
+</code></pre>
+</div>
+<p>There is an example in wicket-examples which demonstrates the usage of this.</p>
+
+<p>Applications can register custom event dispatchers in <code>FrameworkSettings</code>; the dispatchers can be used to build custom event delivery mechanisms. For example a custom <code>IEventDispatcher</code> mechanism can route events to annotated methods, for example:</p>
+<div class='highlight'><pre><code class='java'><span class='kd'>public</span> <span class='kd'>class</span> <span class='nc'>MyComponent</span> <span class='kd'>extends</span> <span class='n'>Component</span> <span class='o'>{</span>
+    <span class='nd'>@OnEvent</span>
+    <span class='kd'>private</span> <span class='kt'>void</span> <span class='nf'>onUserAdded</span><span class='o'>(</span><span class='n'>UserAddedEvent</span> <span class='n'>event</span><span class='o'>)</span> <span class='o'>{...}</span>
+<span class='o'>}</span>
+</code></pre>
+</div>
+<p>where <code>UserAddedEvent</code> is the event payload object.</p>
+
+<p>The default <code>Component#onEvent</code> method will be called even if custom dispatchers are registered.</p>
+
+<p>A default event is raised whenever Wicket begins to create an AJAX response. The payload of the event is the <code>AjaxRequestTarget</code> used for event. Sample implementation:</p>
+<div class='highlight'><pre><code class='java'><span class='c1'>// component that always adds itself to the ajax response</span>
+<span class='kd'>public</span> <span class='kd'>class</span> <span class='nc'>MyComponent</span> <span class='kd'>extends</span> <span class='n'>Component</span> <span class='o'>{</span>
+    <span class='kd'>public</span> <span class='kt'>void</span> <span class='nf'>onEvent</span><span class='o'>(</span><span class='n'>IEvent</span> <span class='n'>event</span><span class='o'>)</span> <span class='o'>{</span>
+        <span class='k'>if</span> <span class='o'>(</span><span class='n'>event</span><span class='o'>.</span><span class='na'>getPayload</span><span class='o'>()</span> <span class='k'>instanceof</span> <span class='n'>AjaxRequestTarget</span><span class='o'>)</span> <span class='o'>{</span>
+            <span class='o'>((</span><span class='n'>AjaxRequestTarget</span><span class='o'>)</span><span class='n'>event</span><span class='o'>.</span><span class='na'>getPayload</span><span class='o'>()).</span><span class='na'>add</span><span class='o'>(</span><span class='k'>this</span><span class='o'>);</span>
+         <span class='o'>}</span>
+    <span class='o'>}</span>
+<span class='o'>}</span>
+</code></pre>
+</div>
+		</div>
+        <div id="clearer"></div>
+		<div id="footer"><span>
+Copyright &copy; 2010 &mdash; 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.
+</span></div>
+
+    </div>
+</div>
+</body>
+</html>

Modified: wicket/common/site/trunk/_site/atom.xml
URL: http://svn.apache.org/viewvc/wicket/common/site/trunk/_site/atom.xml?rev=1166410&r1=1166409&r2=1166410&view=diff
==============================================================================
--- wicket/common/site/trunk/_site/atom.xml (original)
+++ wicket/common/site/trunk/_site/atom.xml Wed Sep  7 21:35:45 2011
@@ -4,7 +4,7 @@
  <title>Apache Wicket</title>
  <link href="http://wicket.apache.org/atom.xml" rel="self"/>
  <link href="http://wicket.apache.org/"/>
- <updated>2011-08-30T09:03:41+02:00</updated>
+ <updated>2011-09-07T23:34:00+02:00</updated>
  <id>http://wicket.apache.org/</id>
  <author>
    <name>Apache Wicket</name>
@@ -13,6 +13,129 @@
  
  
  <entry>
+   <title>Apache Wicket releases Wicket 1.5</title>
+   <link href="http://wicket.apache.org/2011/09/07/wicket-1.5-released.html"/>
+   <updated>2011-09-07T00:00:00+02:00</updated>
+   <id>http://wicket.apache.org/2011/09/07/wicket-1.5-released</id>
+   <content type="html">&lt;p&gt;The Apache Wicket team is proud to announce the immediate availability of the newest release of their component oriented open source Java web framework. Apache Wicket 1.5 has been in development for the last two years and brings many improvements over previous versions.&lt;/p&gt;
+
+&lt;h2 id='downloading_apache_wicket_15'&gt;Downloading Apache Wicket 1.5&lt;/h2&gt;
+
+&lt;p&gt;You can download the release here: &lt;a href='http://www.apache.org/dyn/closer.cgi/wicket/1.5.0'&gt;http://www.apache.org/dyn/closer.cgi/wicket/1.5.0&lt;/a&gt;&lt;/p&gt;
+
+&lt;p&gt;Or use this in your Maven POM to upgrade to the new version:&lt;/p&gt;
+&lt;div class='highlight'&gt;&lt;pre&gt;&lt;code class='xml'&gt;&lt;span class='nt'&gt;&amp;lt;dependency&amp;gt;&lt;/span&gt;
+    &lt;span class='nt'&gt;&amp;lt;groupId&amp;gt;&lt;/span&gt;org.apache.wicket&lt;span class='nt'&gt;&amp;lt;/groupId&amp;gt;&lt;/span&gt;
+    &lt;span class='nt'&gt;&amp;lt;artifactId&amp;gt;&lt;/span&gt;wicket-core&lt;span class='nt'&gt;&amp;lt;/artifactId&amp;gt;&lt;/span&gt;
+    &lt;span class='nt'&gt;&amp;lt;version&amp;gt;&lt;/span&gt;1.5.0&lt;span class='nt'&gt;&amp;lt;/version&amp;gt;&lt;/span&gt;
+&lt;span class='nt'&gt;&amp;lt;/dependency&amp;gt;&lt;/span&gt;
+&lt;/code&gt;&lt;/pre&gt;
+&lt;/div&gt;
+&lt;p&gt;Please note that Wicket&amp;#8217;s main artifact ID has been renamed to &lt;code&gt;wicket-core&lt;/code&gt;.&lt;/p&gt;
+
+&lt;p&gt;You will need to upgrade all modules (i.e. wicket, wicket-extensions, wicket-ioc, wicket-spring, etc) to 1.5.0. &lt;strong&gt;It is not possible to mix previous versions of Wicket with modules of this release.&lt;/strong&gt;&lt;/p&gt;
+
+&lt;h2 id='most_notable_changes'&gt;Most notable changes&lt;/h2&gt;
+
+&lt;p&gt;With this release the Wicket team has revised many of its internals. A short list:&lt;/p&gt;
+
+&lt;ul&gt;
+&lt;li&gt;HTML5 components added: &lt;code&gt;EmailTextField&lt;/code&gt;, &lt;code&gt;NumberTextField&lt;/code&gt;, &lt;code&gt;UrlTextField&lt;/code&gt; and &lt;code&gt;RangeTextField&lt;/code&gt;&lt;/li&gt;
+
+&lt;li&gt;New inter-component events (explained below)&lt;/li&gt;
+
+&lt;li&gt;Minimum required servlet API is servlet-api 2.5&lt;/li&gt;
+
+&lt;li&gt;All standard validators now extend &lt;code&gt;Behavior&lt;/code&gt; to allow for client side validations&lt;/li&gt;
+
+&lt;li&gt;&lt;code&gt;IBehavior&lt;/code&gt; has been removed and &lt;code&gt;AbstractBehavior&lt;/code&gt; has been deprecated, you should now extend &lt;code&gt;Behavior&lt;/code&gt; instead&lt;/li&gt;
+
+&lt;li&gt;Simplified the &lt;a href='https://cwiki.apache.org/WICKET/requestcycle-in-wicket-15.html'&gt;request cycle processing&lt;/a&gt; and made it more extensible&lt;/li&gt;
+
+&lt;li&gt;URL handling is now in one place&lt;/li&gt;
+
+&lt;li&gt;Wicket&amp;#8217;s rendering code has been greatly simplified&lt;/li&gt;
+
+&lt;li&gt;Improved browser &lt;a href='https://cwiki.apache.org/WICKET/caching-in-wicket-15.html'&gt;caching support&lt;/a&gt;&lt;/li&gt;
+
+&lt;li&gt;ClientSideImageMap replaces old ImageMap&lt;/li&gt;
+
+&lt;li&gt;Better support for running behind proxies with &lt;code&gt;x-forwarded-for&lt;/code&gt; header&lt;/li&gt;
+
+&lt;li&gt;&lt;a href='https://cwiki.apache.org/WICKET/requestcycle-in-wicket-15.html'&gt;Request cycle listeners&lt;/a&gt; make it easier to integrate frameworks in your Wicket application&lt;/li&gt;
+
+&lt;li&gt;Consistent naming: methods with &lt;code&gt;Javascript&lt;/code&gt; in the name have been renamed to use proper capitalization: &lt;code&gt;JavaScript&lt;/code&gt;&lt;/li&gt;
+
+&lt;li&gt;Switching to HTTPS is as simple as configuring a new root mapper to make Wicket HTTPS aware and annotating a page with @RequireHttps&lt;/li&gt;
+&lt;/ul&gt;
+
+&lt;p&gt;A longer list of changes and improvements can be found in our &lt;a href='http://s.apache.org/wicket-1.5-migration'&gt;migration guide&lt;/a&gt;.&lt;/p&gt;
+
+&lt;h3 id='intercomponent_events'&gt;Inter-component events&lt;/h3&gt;
+
+&lt;p&gt;Wicket 1.5 offers a simple, yet flexible, way for component to communicate with each other in a decoupled manner. The two major interfaces that facilitate this are:&lt;/p&gt;
+&lt;div class='highlight'&gt;&lt;pre&gt;&lt;code class='java'&gt;&lt;span class='cm'&gt;/**&lt;/span&gt;
+&lt;span class='cm'&gt; * Objects that can send events&lt;/span&gt;
+&lt;span class='cm'&gt; */&lt;/span&gt;
+&lt;span class='kd'&gt;public&lt;/span&gt; &lt;span class='kd'&gt;interface&lt;/span&gt; &lt;span class='nc'&gt;IEventSource&lt;/span&gt; &lt;span class='o'&gt;{&lt;/span&gt;
+    &lt;span class='o'&gt;&amp;lt;&lt;/span&gt;&lt;span class='n'&gt;T&lt;/span&gt;&lt;span class='o'&gt;&amp;gt;&lt;/span&gt; &lt;span class='kt'&gt;void&lt;/span&gt; &lt;span class='n'&gt;send&lt;/span&gt;&lt;span class='o'&gt;(&lt;/span&gt;&lt;span class='n'&gt;IEventSink&lt;/span&gt; &lt;span class='n'&gt;sink&lt;/span&gt;&lt;span class='o'&gt;,&lt;/span&gt; &lt;span class='n'&gt;Broadcast&lt;/span&gt; &lt;span class='n'&gt;broadcast&lt;/span&gt;&lt;span class='o'&gt;,&lt;/span&gt; &lt;span class='n'&gt;T&lt;/span&gt; &lt;span class='n'&gt;payload&lt;/span&gt;&lt;span class='o'&gt;);&lt;/span&gt;
+&lt;span class='o'&gt;}&lt;/span&gt;
+&lt;/code&gt;&lt;/pre&gt;
+&lt;/div&gt;
+&lt;p&gt;and&lt;/p&gt;
+&lt;div class='highlight'&gt;&lt;pre&gt;&lt;code class='java'&gt;&lt;span class='cm'&gt;/**&lt;/span&gt;
+&lt;span class='cm'&gt; * Objects that can receive events&lt;/span&gt;
+&lt;span class='cm'&gt; */&lt;/span&gt;
+&lt;span class='kd'&gt;public&lt;/span&gt; &lt;span class='kd'&gt;interface&lt;/span&gt; &lt;span class='nc'&gt;IEventSink&lt;/span&gt;
+&lt;span class='o'&gt;{&lt;/span&gt;
+    &lt;span class='cm'&gt;/**&lt;/span&gt;
+&lt;span class='cm'&gt;     * Called when an event is sent to this sink&lt;/span&gt;
+&lt;span class='cm'&gt;     */&lt;/span&gt;
+    &lt;span class='kt'&gt;void&lt;/span&gt; &lt;span class='nf'&gt;onEvent&lt;/span&gt;&lt;span class='o'&gt;(&lt;/span&gt;&lt;span class='n'&gt;IEvent&lt;/span&gt;&lt;span class='o'&gt;&amp;lt;?&amp;gt;&lt;/span&gt; &lt;span class='n'&gt;event&lt;/span&gt;&lt;span class='o'&gt;);&lt;/span&gt;
+&lt;span class='o'&gt;}&lt;/span&gt;
+&lt;/code&gt;&lt;/pre&gt;
+&lt;/div&gt;
+&lt;p&gt;The classes that implement these interfaces, and can thus participate in the event mechanism are: &lt;code&gt;Component&lt;/code&gt;, &lt;code&gt;RequestCycle&lt;/code&gt;, &lt;code&gt;Session&lt;/code&gt;, and &lt;code&gt;Application&lt;/code&gt;.&lt;/p&gt;
+
+&lt;p&gt;The mechanism allows for different event broadcast methods defined here:&lt;/p&gt;
+&lt;div class='highlight'&gt;&lt;pre&gt;&lt;code class='java'&gt;&lt;span class='cm'&gt;/**&lt;/span&gt;
+&lt;span class='cm'&gt; * Defines the event broadcast type.&lt;/span&gt;
+&lt;span class='cm'&gt; */&lt;/span&gt;
+&lt;span class='kd'&gt;public&lt;/span&gt; &lt;span class='kd'&gt;enum&lt;/span&gt; &lt;span class='n'&gt;Broadcast&lt;/span&gt; &lt;span class='o'&gt;{&lt;/span&gt;
+    &lt;span class='n'&gt;BREADTH&lt;/span&gt;&lt;span class='o'&gt;,&lt;/span&gt;
+    &lt;span class='n'&gt;DEPTH&lt;/span&gt;&lt;span class='o'&gt;,&lt;/span&gt;
+    &lt;span class='n'&gt;BUBBLE&lt;/span&gt;&lt;span class='o'&gt;,&lt;/span&gt;
+    &lt;span class='n'&gt;EXACT&lt;/span&gt;&lt;span class='o'&gt;;&lt;/span&gt;
+&lt;span class='o'&gt;}&lt;/span&gt;
+&lt;/code&gt;&lt;/pre&gt;
+&lt;/div&gt;
+&lt;p&gt;There is an example in wicket-examples which demonstrates the usage of this.&lt;/p&gt;
+
+&lt;p&gt;Applications can register custom event dispatchers in &lt;code&gt;FrameworkSettings&lt;/code&gt;; the dispatchers can be used to build custom event delivery mechanisms. For example a custom &lt;code&gt;IEventDispatcher&lt;/code&gt; mechanism can route events to annotated methods, for example:&lt;/p&gt;
+&lt;div class='highlight'&gt;&lt;pre&gt;&lt;code class='java'&gt;&lt;span class='kd'&gt;public&lt;/span&gt; &lt;span class='kd'&gt;class&lt;/span&gt; &lt;span class='nc'&gt;MyComponent&lt;/span&gt; &lt;span class='kd'&gt;extends&lt;/span&gt; &lt;span class='n'&gt;Component&lt;/span&gt; &lt;span class='o'&gt;{&lt;/span&gt;
+    &lt;span class='nd'&gt;@OnEvent&lt;/span&gt;
+    &lt;span class='kd'&gt;private&lt;/span&gt; &lt;span class='kt'&gt;void&lt;/span&gt; &lt;span class='nf'&gt;onUserAdded&lt;/span&gt;&lt;span class='o'&gt;(&lt;/span&gt;&lt;span class='n'&gt;UserAddedEvent&lt;/span&gt; &lt;span class='n'&gt;event&lt;/span&gt;&lt;span class='o'&gt;)&lt;/span&gt; &lt;span class='o'&gt;{...}&lt;/span&gt;
+&lt;span class='o'&gt;}&lt;/span&gt;
+&lt;/code&gt;&lt;/pre&gt;
+&lt;/div&gt;
+&lt;p&gt;where &lt;code&gt;UserAddedEvent&lt;/code&gt; is the event payload object.&lt;/p&gt;
+
+&lt;p&gt;The default &lt;code&gt;Component#onEvent&lt;/code&gt; method will be called even if custom dispatchers are registered.&lt;/p&gt;
+
+&lt;p&gt;A default event is raised whenever Wicket begins to create an AJAX response. The payload of the event is the &lt;code&gt;AjaxRequestTarget&lt;/code&gt; used for event. Sample implementation:&lt;/p&gt;
+&lt;div class='highlight'&gt;&lt;pre&gt;&lt;code class='java'&gt;&lt;span class='c1'&gt;// component that always adds itself to the ajax response&lt;/span&gt;
+&lt;span class='kd'&gt;public&lt;/span&gt; &lt;span class='kd'&gt;class&lt;/span&gt; &lt;span class='nc'&gt;MyComponent&lt;/span&gt; &lt;span class='kd'&gt;extends&lt;/span&gt; &lt;span class='n'&gt;Component&lt;/span&gt; &lt;span class='o'&gt;{&lt;/span&gt;
+    &lt;span class='kd'&gt;public&lt;/span&gt; &lt;span class='kt'&gt;void&lt;/span&gt; &lt;span class='nf'&gt;onEvent&lt;/span&gt;&lt;span class='o'&gt;(&lt;/span&gt;&lt;span class='n'&gt;IEvent&lt;/span&gt; &lt;span class='n'&gt;event&lt;/span&gt;&lt;span class='o'&gt;)&lt;/span&gt; &lt;span class='o'&gt;{&lt;/span&gt;
+        &lt;span class='k'&gt;if&lt;/span&gt; &lt;span class='o'&gt;(&lt;/span&gt;&lt;span class='n'&gt;event&lt;/span&gt;&lt;span class='o'&gt;.&lt;/span&gt;&lt;span class='na'&gt;getPayload&lt;/span&gt;&lt;span class='o'&gt;()&lt;/span&gt; &lt;span class='k'&gt;instanceof&lt;/span&gt; &lt;span class='n'&gt;AjaxRequestTarget&lt;/span&gt;&lt;span class='o'&gt;)&lt;/span&gt; &lt;span class='o'&gt;{&lt;/span&gt;
+            &lt;span class='o'&gt;((&lt;/span&gt;&lt;span class='n'&gt;AjaxRequestTarget&lt;/span&gt;&lt;span class='o'&gt;)&lt;/span&gt;&lt;span class='n'&gt;event&lt;/span&gt;&lt;span class='o'&gt;.&lt;/span&gt;&lt;span class='na'&gt;getPayload&lt;/span&gt;&lt;span class='o'&gt;()).&lt;/span&gt;&lt;span class='na'&gt;add&lt;/span&gt;&lt;span class='o'&gt;(&lt;/span&gt;&lt;span class='k'&gt;this&lt;/span&gt;&lt;span class='o'&gt;);&lt;/span&gt;
+         &lt;span class='o'&gt;}&lt;/span&gt;
+    &lt;span class='o'&gt;}&lt;/span&gt;
+&lt;span class='o'&gt;}&lt;/span&gt;
+&lt;/code&gt;&lt;/pre&gt;
+&lt;/div&gt;</content>
+ </entry>
+ 
+ <entry>
    <title>Wicket 1.5-RC7 released</title>
    <link href="http://wicket.apache.org/2011/08/28/1.5-RC7-released.html"/>
    <updated>2011-08-28T00:00:00+02:00</updated>
@@ -58,12 +181,12 @@
 &lt;p&gt;Description: With multi window support application configuration and special query parameters it is possible to execute any kind of JavaScript on a site running with the affected versions.&lt;/p&gt;
 
 &lt;p&gt;Mitigation: Either disable multi window support with&lt;/p&gt;
-
-&lt;p&gt;MyApp.java&lt;/p&gt;
-&lt;div class='highlight'&gt;&lt;pre&gt;&lt;code class='xml'&gt;public void init() {
-    super.init();
-    getPageSettings.setAutomaticMultiWindowSupport(false);
-}
+&lt;div class='highlight'&gt;&lt;pre&gt;&lt;code class='java'&gt;&lt;span class='kd'&gt;public&lt;/span&gt; &lt;span class='kd'&gt;class&lt;/span&gt; &lt;span class='nc'&gt;MyApp&lt;/span&gt; &lt;span class='kd'&gt;extends&lt;/span&gt; &lt;span class='n'&gt;WebApplication&lt;/span&gt; &lt;span class='o'&gt;{&lt;/span&gt; 
+    &lt;span class='kd'&gt;public&lt;/span&gt; &lt;span class='kt'&gt;void&lt;/span&gt; &lt;span class='nf'&gt;init&lt;/span&gt;&lt;span class='o'&gt;()&lt;/span&gt; &lt;span class='o'&gt;{&lt;/span&gt;
+        &lt;span class='kd'&gt;super&lt;/span&gt;&lt;span class='o'&gt;.&lt;/span&gt;&lt;span class='na'&gt;init&lt;/span&gt;&lt;span class='o'&gt;();&lt;/span&gt;
+        &lt;span class='n'&gt;getPageSettings&lt;/span&gt;&lt;span class='o'&gt;.&lt;/span&gt;&lt;span class='na'&gt;setAutomaticMultiWindowSupport&lt;/span&gt;&lt;span class='o'&gt;(&lt;/span&gt;&lt;span class='kc'&gt;false&lt;/span&gt;&lt;span class='o'&gt;);&lt;/span&gt;
+    &lt;span class='o'&gt;}&lt;/span&gt;
+&lt;span class='o'&gt;}&lt;/span&gt;
 &lt;/code&gt;&lt;/pre&gt;
 &lt;/div&gt;
 &lt;p&gt;or upgrade to &lt;a href='http://wicket.apache.org/2011/08/09/wicket-1.4.18-released.html'&gt;Apache Wicket 1.4.18&lt;/a&gt; or &lt;a href='http://wicket.apache.org/2011/06/25/wicket-1.5-RC5.1-released.html'&gt;Apache Wicket 1.5-RC5.1&lt;/a&gt;&lt;/p&gt;
@@ -237,34 +360,4 @@
 &lt;p&gt;I hope you enjoy it, more details are available on &lt;a href='http://wicketinaction.com/2011/03/apache-wicket-cookbook-is-published/'&gt;Wicket In Action Blog Post&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;</content>
  </entry>
  
- <entry>
-   <title>Wicket 1.5-rc2 released</title>
-   <link href="http://wicket.apache.org/2011/02/25/wicket-1.5-rc2-released.html"/>
-   <updated>2011-02-25T00:00:00+01:00</updated>
-   <id>http://wicket.apache.org/2011/02/25/wicket-1.5-rc2-released</id>
-   <content type="html">&lt;p&gt;The Wicket Team is proud to introduce the second Release Candidate in Wicket 1.5 series. See the changelog for the list of bug fixes and improvements done between 1.5-RC1 and 1.5-rc2&lt;/p&gt;
-
-&lt;p&gt;More detailed migration notes are available on our &lt;a href='https://cwiki.apache.org/WICKET/migration-to-wicket-15.html'&gt;Migrate to 1.5 Wiki Page&lt;/a&gt;&lt;/p&gt;
-
-&lt;p&gt;Release Artifacts:&lt;/p&gt;
-
-&lt;ul&gt;
-&lt;li&gt;&lt;a href='http://svn.apache.org/repos/asf/wicket/releases/wicket-1.5-rc2'&gt;Subversion tag&lt;/a&gt;&lt;/li&gt;
-
-&lt;li&gt;&lt;a href='https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310561&amp;amp;version=12316059'&gt;Changelog&lt;/a&gt;&lt;/li&gt;
-
-&lt;li&gt;To use in Maven:&lt;/li&gt;
-&lt;/ul&gt;
-&lt;div class='highlight'&gt;&lt;pre&gt;&lt;code class='xml'&gt;&lt;span class='nt'&gt;&amp;lt;dependency&amp;gt;&lt;/span&gt;
-    &lt;span class='nt'&gt;&amp;lt;groupId&amp;gt;&lt;/span&gt;org.apache.wicket&lt;span class='nt'&gt;&amp;lt;/groupId&amp;gt;&lt;/span&gt;
-    &lt;span class='nt'&gt;&amp;lt;artifactId&amp;gt;&lt;/span&gt;wicket-core&lt;span class='nt'&gt;&amp;lt;/artifactId&amp;gt;&lt;/span&gt;
-    &lt;span class='nt'&gt;&amp;lt;version&amp;gt;&lt;/span&gt;1.5-rc2&lt;span class='nt'&gt;&amp;lt;/version&amp;gt;&lt;/span&gt;
-&lt;span class='nt'&gt;&amp;lt;/dependency&amp;gt;&lt;/span&gt;
-&lt;/code&gt;&lt;/pre&gt;
-&lt;/div&gt;
-&lt;ul&gt;
-&lt;li&gt;Download the &lt;a href='http://www.apache.org/dyn/closer.cgi/wicket/1.5-rc2'&gt;full distribution&lt;/a&gt; (including source)&lt;/li&gt;
-&lt;/ul&gt;</content>
- </entry>
- 
 </feed>

Modified: wicket/common/site/trunk/_site/index.html
URL: http://svn.apache.org/viewvc/wicket/common/site/trunk/_site/index.html?rev=1166410&r1=1166409&r2=1166410&view=diff
==============================================================================
--- wicket/common/site/trunk/_site/index.html (original)
+++ wicket/common/site/trunk/_site/index.html Wed Sep  7 21:35:45 2011
@@ -163,7 +163,87 @@
 </ul>
 
 <p>Wicket is released under the <a href='http://www.apache.org/licenses/LICENSE-2.0.html'>Apache License, Version 2.0</a>.</p>
+<h1>Security announcement: CVE-2011-2712</h1>
+<p>A XSS vulnerability has been found in Apache Wicket version 1.4. This is solved in Apache Wicket 1.4.18. Please upgrade your applications to this release. Wicket versions 1.3.x and 1.5.x are not affected by this vulnerability. <a href='2011/08/23/cve-2011-2712.html'>More information</a></p>
 
+<h1 id='apache_wicket_releases_wicket_15'><a href='/2011/09/07/wicket-1.5-released.html'>Apache Wicket releases Wicket 1.5</a></h1>
+<p>The Apache Wicket team is proud to announce the immediate availability of the newest release of their component oriented open source Java web framework. Apache Wicket 1.5 has been in development for the last two years and brings many improvements over previous versions.</p><h2 id='downloading_apache_wicket_15'>Downloading Apache Wicket 1.5</h2><p>You can download the release here: <a href='http://www.apache.org/dyn/closer.cgi/wicket/1.5.0'>http://www.apache.org/dyn/closer.cgi/wicket/1.5.0</a></p><p>Or use this in your Maven POM to upgrade to the new version:</p><div class='highlight'><pre><code class='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>1.5.0<span class='nt'>&lt;/version&gt;</span>
+<span class='nt'>&lt;/dependency&gt;</span>
+</code></pre>
+</div><p>Please note that Wicket&#8217;s main artifact ID has been renamed to <code>wicket-core</code>.</p><p>You will need to upgrade all modules (i.e. wicket, wicket-extensions, wicket-ioc, wicket-spring, etc) to 1.5.0. <strong>It is not possible to mix previous versions of Wicket with modules of this release.</strong></p><h2 id='most_notable_changes'>Most notable changes</h2><p>With this release the Wicket team has revised many of its internals. A short list:</p><ul>
+<li>HTML5 components added: <code>EmailTextField</code>, <code>NumberTextField</code>, <code>UrlTextField</code> and <code>RangeTextField</code></li>
+
+<li>New inter-component events (explained below)</li>
+
+<li>Minimum required servlet API is servlet-api 2.5</li>
+
+<li>All standard validators now extend <code>Behavior</code> to allow for client side validations</li>
+
+<li><code>IBehavior</code> has been removed and <code>AbstractBehavior</code> has been deprecated, you should now extend <code>Behavior</code> instead</li>
+
+<li>Simplified the <a href='https://cwiki.apache.org/WICKET/requestcycle-in-wicket-15.html'>request cycle processing</a> and made it more extensible</li>
+
+<li>URL handling is now in one place</li>
+
+<li>Wicket&#8217;s rendering code has been greatly simplified</li>
+
+<li>Improved browser <a href='https://cwiki.apache.org/WICKET/caching-in-wicket-15.html'>caching support</a></li>
+
+<li>ClientSideImageMap replaces old ImageMap</li>
+
+<li>Better support for running behind proxies with <code>x-forwarded-for</code> header</li>
+
+<li><a href='https://cwiki.apache.org/WICKET/requestcycle-in-wicket-15.html'>Request cycle listeners</a> make it easier to integrate frameworks in your Wicket application</li>
+
+<li>Consistent naming: methods with <code>Javascript</code> in the name have been renamed to use proper capitalization: <code>JavaScript</code></li>
+
+<li>Switching to HTTPS is as simple as configuring a new root mapper to make Wicket HTTPS aware and annotating a page with @RequireHttps</li>
+</ul><p>A longer list of changes and improvements can be found in our <a href='http://s.apache.org/wicket-1.5-migration'>migration guide</a>.</p><h3 id='intercomponent_events'>Inter-component events</h3><p>Wicket 1.5 offers a simple, yet flexible, way for component to communicate with each other in a decoupled manner. The two major interfaces that facilitate this are:</p><div class='highlight'><pre><code class='java'><span class='cm'>/**</span>
+<span class='cm'> * Objects that can send events</span>
+<span class='cm'> */</span>
+<span class='kd'>public</span> <span class='kd'>interface</span> <span class='nc'>IEventSource</span> <span class='o'>{</span>
+    <span class='o'>&lt;</span><span class='n'>T</span><span class='o'>&gt;</span> <span class='kt'>void</span> <span class='n'>send</span><span class='o'>(</span><span class='n'>IEventSink</span> <span class='n'>sink</span><span class='o'>,</span> <span class='n'>Broadcast</span> <span class='n'>broadcast</span><span class='o'>,</span> <span class='n'>T</span> <span class='n'>payload</span><span class='o'>);</span>
+<span class='o'>}</span>
+</code></pre>
+</div><p>and</p><div class='highlight'><pre><code class='java'><span class='cm'>/**</span>
+<span class='cm'> * Objects that can receive events</span>
+<span class='cm'> */</span>
+<span class='kd'>public</span> <span class='kd'>interface</span> <span class='nc'>IEventSink</span>
+<span class='o'>{</span>
+    <span class='cm'>/**</span>
+<span class='cm'>     * Called when an event is sent to this sink</span>
+<span class='cm'>     */</span>
+    <span class='kt'>void</span> <span class='nf'>onEvent</span><span class='o'>(</span><span class='n'>IEvent</span><span class='o'>&lt;?&gt;</span> <span class='n'>event</span><span class='o'>);</span>
+<span class='o'>}</span>
+</code></pre>
+</div><p>The classes that implement these interfaces, and can thus participate in the event mechanism are: <code>Component</code>, <code>RequestCycle</code>, <code>Session</code>, and <code>Application</code>.</p><p>The mechanism allows for different event broadcast methods defined here:</p><div class='highlight'><pre><code class='java'><span class='cm'>/**</span>
+<span class='cm'> * Defines the event broadcast type.</span>
+<span class='cm'> */</span>
+<span class='kd'>public</span> <span class='kd'>enum</span> <span class='n'>Broadcast</span> <span class='o'>{</span>
+    <span class='n'>BREADTH</span><span class='o'>,</span>
+    <span class='n'>DEPTH</span><span class='o'>,</span>
+    <span class='n'>BUBBLE</span><span class='o'>,</span>
+    <span class='n'>EXACT</span><span class='o'>;</span>
+<span class='o'>}</span>
+</code></pre>
+</div><p>There is an example in wicket-examples which demonstrates the usage of this.</p><p>Applications can register custom event dispatchers in <code>FrameworkSettings</code>; the dispatchers can be used to build custom event delivery mechanisms. For example a custom <code>IEventDispatcher</code> mechanism can route events to annotated methods, for example:</p><div class='highlight'><pre><code class='java'><span class='kd'>public</span> <span class='kd'>class</span> <span class='nc'>MyComponent</span> <span class='kd'>extends</span> <span class='n'>Component</span> <span class='o'>{</span>
+    <span class='nd'>@OnEvent</span>
+    <span class='kd'>private</span> <span class='kt'>void</span> <span class='nf'>onUserAdded</span><span class='o'>(</span><span class='n'>UserAddedEvent</span> <span class='n'>event</span><span class='o'>)</span> <span class='o'>{...}</span>
+<span class='o'>}</span>
+</code></pre>
+</div><p>where <code>UserAddedEvent</code> is the event payload object.</p><p>The default <code>Component#onEvent</code> method will be called even if custom dispatchers are registered.</p><p>A default event is raised whenever Wicket begins to create an AJAX response. The payload of the event is the <code>AjaxRequestTarget</code> used for event. Sample implementation:</p><div class='highlight'><pre><code class='java'><span class='c1'>// component that always adds itself to the ajax response</span>
+<span class='kd'>public</span> <span class='kd'>class</span> <span class='nc'>MyComponent</span> <span class='kd'>extends</span> <span class='n'>Component</span> <span class='o'>{</span>
+    <span class='kd'>public</span> <span class='kt'>void</span> <span class='nf'>onEvent</span><span class='o'>(</span><span class='n'>IEvent</span> <span class='n'>event</span><span class='o'>)</span> <span class='o'>{</span>
+        <span class='k'>if</span> <span class='o'>(</span><span class='n'>event</span><span class='o'>.</span><span class='na'>getPayload</span><span class='o'>()</span> <span class='k'>instanceof</span> <span class='n'>AjaxRequestTarget</span><span class='o'>)</span> <span class='o'>{</span>
+            <span class='o'>((</span><span class='n'>AjaxRequestTarget</span><span class='o'>)</span><span class='n'>event</span><span class='o'>.</span><span class='na'>getPayload</span><span class='o'>()).</span><span class='na'>add</span><span class='o'>(</span><span class='k'>this</span><span class='o'>);</span>
+         <span class='o'>}</span>
+    <span class='o'>}</span>
+<span class='o'>}</span>
+</code></pre>
+</div>
 <h1 id='wicket_15rc7_released'><a href='/2011/08/28/1.5-RC7-released.html'>Wicket 1.5-RC7 released</a></h1>
 <p>The Wicket Team is proud to introduce the seventh Release Candidate in Wicket 1.5 series. See the changelog for the list of bug fixes and improvements done between 1.5-RC5.1 and 1.5-RC7</p><p>More detailed migration notes are available on our <a href='https://cwiki.apache.org/WICKET/migration-to-wicket-15.html'>Migrate to 1.5 Wiki Page</a></p><p>Release Artifacts:</p><ul>
 <li><a href='http://svn.apache.org/repos/asf/wicket/releases/wicket-1.5-RC7'>Subversion tag</a></li>
@@ -181,14 +261,13 @@
 </code></pre>
 </div><ul>
 <li>Download the <a href='http://www.apache.org/dyn/closer.cgi/wicket/1.5-RC7'>full distribution</a> (including source)</li>
-</ul>
-<h1 id='cve20112712__apache_wicket_xss_vulnerability'><a href='/2011/08/23/cve-2011-2712.html'>CVE-2011-2712 - Apache Wicket XSS vulnerability</a></h1>
-<p>Vendor: The Apache Software Foundation</p><p>Versions Affected: Apache Wicket 1.4.x</p><p>Apache Wicket 1.3.x and 1.5-RCx are not affected</p><p>Description: With multi window support application configuration and special query parameters it is possible to execute any kind of JavaScript on a site running with the affected versions.</p><p>Mitigation: Either disable multi window support with</p><p>MyApp.java</p><div class='highlight'><pre><code class='xml'>public void init() {
-    super.init();
-    getPageSettings.setAutomaticMultiWindowSupport(false);
-}
-</code></pre>
-</div><p>or upgrade to <a href='http://wicket.apache.org/2011/08/09/wicket-1.4.18-released.html'>Apache Wicket 1.4.18</a> or <a href='http://wicket.apache.org/2011/06/25/wicket-1.5-RC5.1-released.html'>Apache Wicket 1.5-RC5.1</a></p><p>Credit: This issue was discovered by Sven Krewitt of TÜV Rheinland i-sec GmbH.</p><h1>Older news items</h1><ul>
+</ul><h1>Older news items</h1><ul>
+
+
+<li>
+	<a href='/2011/08/23/cve-2011-2712.html'>CVE-2011-2712 - Apache Wicket XSS vulnerability</a> - <span>23 Aug 2011</span><br />
+	Vendor: The Apache Software Foundation Versions Affected: Apache Wicket 1.4.x Apache Wicket 1.3.x and 1.5-RCx are not affected Description: With multi window support application configuration...
+	<a href='/2011/08/23/cve-2011-2712.html'>more</a></li>
 
 
 <li>
@@ -244,12 +323,6 @@
 	This is sixteenth release of the Wicket 1.4.x series. This is primarily a minor bugfix release on the 1.4.x (stable) branch. Subversion tag Changelog To...
 	<a href='/2011/02/25/wicket-1.4.16-released.html'>more</a></li>
 
-
-<li>
-	<a href='/2011/01/22/wicket-1.5-RC1-released.html'>Wicket 1.5-RC1 released</a> - <span>22 Jan 2011</span><br />
-	The Wicket Team is proud to introduce the first Release Candidate in Wicket 1.5 series. The 1.5 series provides the following major improvements: A more...
-	<a href='/2011/01/22/wicket-1.5-RC1-released.html'>more</a></li>
-
 </ul>
 <h1 id='books_about_wicket'>Books about Wicket</h1>
 

Modified: wicket/common/site/trunk/index.md
URL: http://svn.apache.org/viewvc/wicket/common/site/trunk/index.md?rev=1166410&r1=1166409&r2=1166410&view=diff
==============================================================================
--- wicket/common/site/trunk/index.md (original)
+++ wicket/common/site/trunk/index.md Wed Sep  7 21:35:45 2011
@@ -18,6 +18,10 @@ reusable components written with plain J
 Wicket is released under the [Apache License, Version
 2.0](http://www.apache.org/licenses/LICENSE-2.0.html).
 
+<h1>Security announcement: CVE-2011-2712</h1>
+A XSS vulnerability has been found in Apache Wicket version 1.4. This is solved in Apache Wicket 1.4.18. Please upgrade your applications to this release. Wicket versions 1.3.x and 1.5.x are not affected by this vulnerability.
+[More information](2011/08/23/cve-2011-2712.html)
+
 {% for post in site.posts limit:2 %}
 # [{{ post.title}}]({{post.url}}) #
 {{post.content}}