Author: knopp
Date: Wed Aug 1 04:07:55 2007
New Revision: 561761
URL: http://svn.apache.org/viewvc?view=rev&rev=561761
Log:
Fixed filtering of header sections on ajax requests
Modified:
wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/ajax/AjaxRequestTarget.java
wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/ajax/AjaxHeaderContributionPage_ajax_expected.html
Modified:
wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/ajax/AjaxRequestTarget.java
URL:
http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/ajax/AjaxRequestTarget.java?view=diff&rev=561761&r1=561760&r2=561761
==============================================================================
---
wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/ajax/AjaxRequestTarget.java
(original)
+++
wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/ajax/AjaxRequestTarget.java
Wed Aug 1 04:07:55 2007
@@ -431,6 +431,20 @@
*/
public void detach(final RequestCycle requestCycle)
{
+ if (header != null)
+ {
+ Page page = header.getPage();
+
+ if (oldHeader == null)
+ {
+ page.remove(header);
+ }
+ else
+ {
+ page.replace(oldHeader);
+ }
+ }
+
// detach the page if it was updated
if (markupIdToComponent.size() > 0)
{
@@ -899,6 +913,7 @@
// whether a header contribution is being rendered
private boolean headerRendering = false;
private HtmlHeaderContainer header = null;
+ private Component oldHeader = null;
private IHeaderResponse headerResponse;
@@ -962,18 +977,18 @@
if (header == null)
{
header = new
AjaxHtmlHeaderContainer(HtmlHeaderSectionHandler.HEADER_ID, this);
- }
+ oldHeader =
component.getPage().get(HtmlHeaderSectionHandler.HEADER_ID);
- // add or replace the container to page
- Component oldHeader =
component.getPage().get(HtmlHeaderSectionHandler.HEADER_ID);
+ // add or replace the container to page
- if (oldHeader != null)
- {
- component.getPage().replace(header);
- }
- else
- {
- component.getPage().add(header);
+ if (oldHeader != null)
+ {
+ component.getPage().replace(header);
+ }
+ else
+ {
+ component.getPage().add(header);
+ }
}
// save old response, set new
@@ -1032,15 +1047,6 @@
}
headerRendering = false;
-
- if (oldHeader == null)
- {
- component.getPage().remove(header);
- }
- else
- {
- component.getPage().replace(oldHeader);
- }
}
/**
Modified:
wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/ajax/AjaxHeaderContributionPage_ajax_expected.html
URL:
http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/ajax/AjaxHeaderContributionPage_ajax_expected.html?view=diff&rev=561761&r1=561760&r2=561761
==============================================================================
---
wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/ajax/AjaxHeaderContributionPage_ajax_expected.html
(original)
+++
wicket/trunk/jdk-1.4/wicket/src/test/java/org/apache/wicket/ajax/AjaxHeaderContributionPage_ajax_expected.html
Wed Aug 1 04:07:55 2007
@@ -3,12 +3,8 @@
<script type="text/javascript" src="javascripturl"></script>
</head>]]></header-contribution><component id="test13" ><![CDATA[<span
wicket:id="test1" id="test13"><wicket:panel>
test
-</wicket:panel></span>]]></component><header-contribution><![CDATA[<head
xmlns:wicket="http://wicket.apache.org">
-<link href="../test"/>
-</head>]]></header-contribution><component id="test24" ><![CDATA[<span
wicket:id="test2" id="test24"><wicket:panel>
+</wicket:panel></span>]]></component><component id="test24" ><![CDATA[<span
wicket:id="test2" id="test24"><wicket:panel>
test
-</wicket:panel></span>]]></component><header-contribution><![CDATA[<head
xmlns:wicket="http://wicket.apache.org">
-<link href="../test"/>
-</head>]]></header-contribution><component id="test35" ><![CDATA[<span
wicket:id="test3" id="test35"><wicket:panel>
+</wicket:panel></span>]]></component><component id="test35" ><![CDATA[<span
wicket:id="test3" id="test35"><wicket:panel>
test
</wicket:panel></span>]]></component><evaluate><![CDATA[domReady();]]></evaluate><evaluate><![CDATA[append();]]></evaluate><evaluate><![CDATA[onLoad();]]></evaluate></ajax-response>