Author: ivaynberg
Date: Fri Nov  4 19:52:19 2011
New Revision: 1197727

URL: http://svn.apache.org/viewvc?rev=1197727&view=rev
Log:

Issue: WICKET-4197

Modified:
    
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/handler/ListenerInterfaceRequestHandler.java

Modified: 
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/handler/ListenerInterfaceRequestHandler.java
URL: 
http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/handler/ListenerInterfaceRequestHandler.java?rev=1197727&r1=1197726&r2=1197727&view=diff
==============================================================================
--- 
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/handler/ListenerInterfaceRequestHandler.java
 (original)
+++ 
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/request/handler/ListenerInterfaceRequestHandler.java
 Fri Nov  4 19:52:19 2011
@@ -166,7 +166,22 @@ public class ListenerInterfaceRequestHan
                final boolean freshPage = 
pageComponentProvider.isPageInstanceFresh();
                final boolean isAjax = 
((WebRequest)requestCycle.getRequest()).isAjax();
 
-               if (getComponent().getPage() == page)
+               IRequestableComponent component = null;
+               try
+               {
+                       component = getComponent();
+               }
+               catch (ComponentNotFoundException e)
+               {
+                       // either the page is stateless and the component we 
are looking for is not added in the
+                       // constructor
+                       // or the page is stateful+stale and a new instances 
was created by pageprovider
+                       // we denote this by setting component to null
+                       component = null;
+               }
+
+               if ((component == null && freshPage) ||
+                       (component != null && getComponent().getPage() == page))
                {
                        if (page instanceof Page)
                        {


Reply via email to