Return-Path: X-Original-To: apmail-myfaces-dev-archive@www.apache.org Delivered-To: apmail-myfaces-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id A4B891A44 for ; Tue, 26 Apr 2011 16:15:44 +0000 (UTC) Received: (qmail 81343 invoked by uid 500); 26 Apr 2011 16:15:44 -0000 Delivered-To: apmail-myfaces-dev-archive@myfaces.apache.org Received: (qmail 81310 invoked by uid 500); 26 Apr 2011 16:15:44 -0000 Mailing-List: contact dev-help@myfaces.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: "MyFaces Development" Delivered-To: mailing list dev@myfaces.apache.org Received: (qmail 81303 invoked by uid 99); 26 Apr 2011 16:15:44 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 26 Apr 2011 16:15:44 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED,T_RP_MATCHES_RCVD X-Spam-Check-By: apache.org Received: from [140.211.11.116] (HELO hel.zones.apache.org) (140.211.11.116) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 26 Apr 2011 16:15:42 +0000 Received: from hel.zones.apache.org (hel.zones.apache.org [140.211.11.116]) by hel.zones.apache.org (Postfix) with ESMTP id 5E51CB4AB4 for ; Tue, 26 Apr 2011 16:15:03 +0000 (UTC) Date: Tue, 26 Apr 2011 16:15:03 +0000 (UTC) From: "Andrew Robinson (JIRA)" To: dev@myfaces.apache.org Message-ID: <981421742.2871.1303834503383.JavaMail.tomcat@hel.zones.apache.org> In-Reply-To: <197268858.9069.1299101857030.JavaMail.tomcat@hel.zones.apache.org> Subject: [jira] [Reopened] (TRINIDAD-2047) UIXCollection saves the stamp state when there is no stamp MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/TRINIDAD-2047?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andrew Robinson reopened TRINIDAD-2047: --------------------------------------- The fix was an incorrect one. Due to my misunderstanding of the code due to a lack of comments, it seems that there is a valid reason why the non-stamped state is being saved as a stamped state. This is the only code that saves off the virgin state of the child components. My change is causing the nested state to not be cleared from the children components once the row key is set back to null (-1 row index). This is especially bad with nested collections, as the nested row stamp state object is not cleared and thus nested collections may end up sharing their stamp state across parent rows. > UIXCollection saves the stamp state when there is no stamp > ---------------------------------------------------------- > > Key: TRINIDAD-2047 > URL: https://issues.apache.org/jira/browse/TRINIDAD-2047 > Project: MyFaces Trinidad > Issue Type: Bug > Components: Components > Affects Versions: 1.2.14-core , 2.0.0-beta-2 > Reporter: Andrew Robinson > Assignee: Andrew Robinson > Fix For: 1.2.15-core , 2.0.0 > > > UIXCollection in the preRowDataChange saves the current stamp state. The problem is that the code does not check to see if there is a current stamp. The result, is child components may not correctly function if they expect to be inside a valid stamp. What happens is that when the collection first sets its row key/index, the stamp state is saved for index -1 (row key null). Children components that assume that the collection is processing a stamp may error out. There should be no reason why the stamp state is being saved when there is no stamp. > I have come across user's of our code where they are getting exceptions in their code as a result. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira