You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by aw...@apache.org on 2007/05/21 18:31:21 UTC

svn commit: r540196 - /myfaces/trinidad/trunk/trinidad/trinidad-api/src/main/java/org/apache/myfaces/trinidad/model/ChildPropertyTreeModel.java

Author: awiner
Date: Mon May 21 09:31:19 2007
New Revision: 540196

URL: http://svn.apache.org/viewvc?view=rev&rev=540196
Log:
TRINIDAD-27: ChildPropertyTreeModel state is not serializable: List.subList()
- List.subList() returns a non-serializable object, so ChildPropertyTreeModel
  was returning non-serializable rowkeys.  Make a clone of the sublist.
- Thanks to Henk Vanhoe for identifying the cause of this

Modified:
    myfaces/trinidad/trunk/trinidad/trinidad-api/src/main/java/org/apache/myfaces/trinidad/model/ChildPropertyTreeModel.java

Modified: myfaces/trinidad/trunk/trinidad/trinidad-api/src/main/java/org/apache/myfaces/trinidad/model/ChildPropertyTreeModel.java
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk/trinidad/trinidad-api/src/main/java/org/apache/myfaces/trinidad/model/ChildPropertyTreeModel.java?view=diff&rev=540196&r1=540195&r2=540196
==============================================================================
--- myfaces/trinidad/trunk/trinidad/trinidad-api/src/main/java/org/apache/myfaces/trinidad/model/ChildPropertyTreeModel.java (original)
+++ myfaces/trinidad/trunk/trinidad/trinidad-api/src/main/java/org/apache/myfaces/trinidad/model/ChildPropertyTreeModel.java Mon May 21 09:31:19 2007
@@ -184,7 +184,9 @@
     List<Object> path = (List<Object>) childKey;
     if ((path == null) || (path.size() <= 1))
       return null;
-    return path.subList(0, path.size() - 1);
+    // Make a copy of the sublist - subList does not return
+    // a serializable object
+    return new ArrayList<Object>(path.subList(0, path.size() - 1));
   }
 
   @Override