You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by jk...@apache.org on 2006/08/25 23:35:56 UTC

svn commit: r436963 - in /tapestry/tapestry4/trunk/tapestry-framework/src: java/org/apache/tapestry/components/ForBean.java java/org/apache/tapestry/components/IfBean.java test/org/apache/tapestry/components/TestIfElse.java

Author: jkuhnert
Date: Fri Aug 25 14:35:55 2006
New Revision: 436963

URL: http://svn.apache.org/viewvc?rev=436963&view=rev
Log:
Bug fix for TAPESTRY-1072. Forgot to add setFormFieldUpdating calls in If/For components.

Modified:
    tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/components/ForBean.java
    tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/components/IfBean.java
    tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/components/TestIfElse.java

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/components/ForBean.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/components/ForBean.java?rev=436963&r1=436962&r2=436963&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/components/ForBean.java (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/components/ForBean.java Fri Aug 25 14:35:55 2006
@@ -28,6 +28,7 @@
 import org.apache.tapestry.Tapestry;
 import org.apache.tapestry.TapestryUtils;
 import org.apache.tapestry.coerce.ValueConverter;
+import org.apache.tapestry.engine.NullWriter;
 import org.apache.tapestry.form.AbstractFormComponent;
 import org.apache.tapestry.services.DataSqueezer;
 import org.apache.tapestry.services.ExpressionEvaluator;
@@ -110,7 +111,10 @@
         // The dataSource was either not convertable to Iterator, or was empty.
         if (dataSource == null)
             return;
-
+        
+        if (!cycleRewinding && form != null && !NullWriter.class.isInstance(writer))
+            form.setFormFieldUpdating(true);
+        
         String element = getElement();
 
         // Perform the iterations

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/components/IfBean.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/components/IfBean.java?rev=436963&r1=436962&r2=436963&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/components/IfBean.java (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/components/IfBean.java Fri Aug 25 14:35:55 2006
@@ -23,6 +23,7 @@
 import org.apache.tapestry.IRequestCycle;
 import org.apache.tapestry.Tapestry;
 import org.apache.tapestry.TapestryUtils;
+import org.apache.tapestry.engine.NullWriter;
 import org.apache.tapestry.form.AbstractFormComponent;
 import org.apache.tapestry.services.DataSqueezer;
 
@@ -62,14 +63,17 @@
         // get the condition. work with a hidden field if necessary
         _conditionValue = evaluateCondition(cycle, form, cycleRewinding);
         _rendering = true;
-
+        
+        if (!cycleRewinding && form != null && !NullWriter.class.isInstance(writer))
+            form.setFormFieldUpdating(true);
+        
         try
         {
             // call listener
             IActionListener listener = getListener();
             if (listener != null)
                 listener.actionTriggered(this, cycle);
-
+            
             // now render if condition is true
             if (_conditionValue)
             {

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/components/TestIfElse.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/components/TestIfElse.java?rev=436963&r1=436962&r2=436963&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/components/TestIfElse.java (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/components/TestIfElse.java Fri Aug 25 14:35:55 2006
@@ -159,6 +159,8 @@
         
         form.addHiddenValue("If", "T");
         
+        form.setFormFieldUpdating(true);
+        
         trainResponseBuilder(cycle, writer);
         
         IRender body = newRender(writer, cycle);
@@ -207,6 +209,8 @@
         expect(form.getElementId(conditional)).andReturn("If");
         
         form.addHiddenValue("If", "F");
+        
+        form.setFormFieldUpdating(true);
         
         cycle.setAttribute(IfBean.IF_VALUE_ATTRIBUTE, Boolean.FALSE);