You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by sk...@apache.org on 2007/10/27 19:31:32 UTC

svn commit: r589160 - /myfaces/core/trunk/api/src/main/java/javax/faces/webapp/UIComponentTag.java

Author: skitching
Date: Sat Oct 27 10:31:31 2007
New Revision: 589160

URL: http://svn.apache.org/viewvc?rev=589160&view=rev
Log:
Add comment only

Modified:
    myfaces/core/trunk/api/src/main/java/javax/faces/webapp/UIComponentTag.java

Modified: myfaces/core/trunk/api/src/main/java/javax/faces/webapp/UIComponentTag.java
URL: http://svn.apache.org/viewvc/myfaces/core/trunk/api/src/main/java/javax/faces/webapp/UIComponentTag.java?rev=589160&r1=589159&r2=589160&view=diff
==============================================================================
--- myfaces/core/trunk/api/src/main/java/javax/faces/webapp/UIComponentTag.java (original)
+++ myfaces/core/trunk/api/src/main/java/javax/faces/webapp/UIComponentTag.java Sat Oct 27 10:31:31 2007
@@ -530,6 +530,14 @@
         {
             if (!isSuppressed())
             {
+            	// Note that encodeBegin is inside this if-clause because for components that do
+            	// NOT render their children, begin was already called during the doStartTag method.
+            	// However for components that do render their children, we want those children to
+            	// exist before the begin method gets called, so delay until here. Of course that
+            	// causes nasty problems when this tag has non-JSF stuff inside it, eg plain text.
+            	// That plain text will be output before encodeBegin is invoked. The spec authors
+            	// presumably decided this was an acceptable tradeoff to allow encodeBegin to have
+            	// access to the children.
                 if (component.getRendersChildren())
                 {
                     encodeBegin();