You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by ar...@apache.org on 2009/06/01 20:03:06 UTC

svn commit: r780760 - /myfaces/trinidad/trunk/trinidad-api/src/main/java/org/apache/myfaces/trinidad/component/UIXCollection.java

Author: arobinson74
Date: Mon Jun  1 18:03:06 2009
New Revision: 780760

URL: http://svn.apache.org/viewvc?rev=780760&view=rev
Log:
TRINIDAD-1493

Appling patch from Kamran Kashanian

Modified:
    myfaces/trinidad/trunk/trinidad-api/src/main/java/org/apache/myfaces/trinidad/component/UIXCollection.java

Modified: myfaces/trinidad/trunk/trinidad-api/src/main/java/org/apache/myfaces/trinidad/component/UIXCollection.java
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk/trinidad-api/src/main/java/org/apache/myfaces/trinidad/component/UIXCollection.java?rev=780760&r1=780759&r2=780760&view=diff
==============================================================================
--- myfaces/trinidad/trunk/trinidad-api/src/main/java/org/apache/myfaces/trinidad/component/UIXCollection.java (original)
+++ myfaces/trinidad/trunk/trinidad-api/src/main/java/org/apache/myfaces/trinidad/component/UIXCollection.java Mon Jun  1 18:03:06 2009
@@ -1051,18 +1051,26 @@
         else
         {
           String currencyString = postId.substring(0, sepIndex);
-          Object oldRowKey = getRowKey();
-          try
+          Object rowKey = getClientRowKeyManager().getRowKey(context, this, currencyString);
+          
+          // A non-null rowKey here means we are on a row and we should set currency,  otherwise 
+          // the client id is for a non-stamped child component in the table/column header/footer.
+          if (rowKey != null)
           {
-            setCurrencyString(currencyString);
-            
-            return invokeOnChildrenComponents(context, clientId, callback);
-          }
-          finally
-          {
-            // And restore the currency
-            setRowKey(oldRowKey);
+            Object oldRowKey = getRowKey();
+            try
+            {
+              setRowKey(rowKey);              
+              return invokeOnChildrenComponents(context, clientId, callback);
+            }
+            finally
+            {
+              // And restore the currency
+              setRowKey(oldRowKey);
+            }
           }
+          else
+            return invokeOnChildrenComponents(context, clientId, callback);            
         }
       }
       finally