You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by jc...@apache.org on 2008/10/04 23:39:44 UTC
svn commit: r701713 -
/wicket/trunk/wicket/src/main/java/org/apache/wicket/ajax/AjaxRequestTarget.java
Author: jcompagner
Date: Sat Oct 4 14:39:44 2008
New Revision: 701713
URL: http://svn.apache.org/viewvc?rev=701713&view=rev
Log:
from 1.3 (better handling of ajax detach)
Modified:
wicket/trunk/wicket/src/main/java/org/apache/wicket/ajax/AjaxRequestTarget.java
Modified: wicket/trunk/wicket/src/main/java/org/apache/wicket/ajax/AjaxRequestTarget.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket/src/main/java/org/apache/wicket/ajax/AjaxRequestTarget.java?rev=701713&r1=701712&r2=701713&view=diff
==============================================================================
--- wicket/trunk/wicket/src/main/java/org/apache/wicket/ajax/AjaxRequestTarget.java (original)
+++ wicket/trunk/wicket/src/main/java/org/apache/wicket/ajax/AjaxRequestTarget.java Sat Oct 4 14:39:44 2008
@@ -441,7 +441,11 @@
if (markupIdToComponent.size() > 0)
{
final Component component = markupIdToComponent.values().iterator().next();
- component.getPage().detach();
+ final Page page = (Page)component.findParent(Page.class);
+ if (page != null)
+ {
+ page.detach();
+ }
}
}
@@ -761,10 +765,25 @@
page.startComponentRender(component);
- component.prepareForRender();
+ try
+ {
+ component.prepareForRender();
- // render any associated headers of the component
- respondHeaderContribution(response, component);
+ // render any associated headers of the component
+ respondHeaderContribution(response, component);
+ }
+ catch (RuntimeException e)
+ {
+ try
+ {
+ component.afterRender();
+ }
+ catch (RuntimeException e2)
+ {
+ // ignore this one could be a result off.
+ }
+ throw e;
+ }
component.renderComponent();