Author: jrthomerson
Date: Fri Aug  6 19:51:26 2010
New Revision: 983111

URL: http://svn.apache.org/viewvc?rev=983111&view=rev
Log:
fixes WICKET-2974

Modified:
    
wicket/branches/wicket-1.4.x/wicket/src/main/java/org/apache/wicket/Component.java

Modified: 
wicket/branches/wicket-1.4.x/wicket/src/main/java/org/apache/wicket/Component.java
URL: 
http://svn.apache.org/viewvc/wicket/branches/wicket-1.4.x/wicket/src/main/java/org/apache/wicket/Component.java?rev=983111&r1=983110&r2=983111&view=diff
==============================================================================
--- 
wicket/branches/wicket-1.4.x/wicket/src/main/java/org/apache/wicket/Component.java
 (original)
+++ 
wicket/branches/wicket-1.4.x/wicket/src/main/java/org/apache/wicket/Component.java
 Fri Aug  6 19:51:26 2010
@@ -928,8 +928,8 @@ public abstract class Component implemen
                final IDebugSettings debugSettings = 
Application.get().getDebugSettings();
                if (debugSettings.isLinePreciseReportingOnNewComponentEnabled())
                {
-                       setMetaData(CONSTRUCTED_AT_KEY,
-                               Strings.toString(this, new 
MarkupException("constructed")));
+                       setMetaData(CONSTRUCTED_AT_KEY, Strings.toString(this, 
new MarkupException(
+                               "constructed")));
                }
 
                if (model != null)
@@ -1112,7 +1112,21 @@ public abstract class Component implemen
                                feedbacks = new ArrayList<Component>();
                                getRequestCycle().setMetaData(FEEDBACK_LIST, 
feedbacks);
                        }
-                       feedbacks.add(this);
+                       if (this instanceof MarkupContainer)
+                       {
+                               
((MarkupContainer)this).visitChildren(IFeedback.class, new IVisitor<Component>()
+                               {
+                                       public Object component(Component 
component)
+                                       {
+                                               component.beforeRender();
+                                               return 
IVisitor.CONTINUE_TRAVERSAL;
+                                       }
+                               });
+                       }
+                       if (!feedbacks.contains(this))
+                       {
+                               feedbacks.add(this);
+                       }
                }
        }
 
@@ -3277,13 +3291,9 @@ public abstract class Component implemen
                        final Page page = findPage();
                        if (page == null)
                        {
-                               return new StringBuffer("[Component id = 
").append(getId())
-                                       .append(", page = <No Page>, path = ")
-                                       .append(getPath())
-                                       .append(".")
-                                       .append(Classes.simpleName(getClass()))
-                                       .append("]")
-                                       .toString();
+                               return new StringBuffer("[Component id = 
").append(getId()).append(
+                                       ", page = <No Page>, path = 
").append(getPath()).append(".").append(
+                                       
Classes.simpleName(getClass())).append("]").toString();
                        }
                        else
                        {


Reply via email to