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>


Reply via email to