You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@myfaces.apache.org by "Scott O'Bryan (JIRA)" <de...@myfaces.apache.org> on 2011/01/24 18:04:43 UTC

[jira] Created: (TRINIDAD-2019) Class Cast Exception on StampState$TableState when using Mojarra

Class Cast Exception on StampState$TableState when using Mojarra
----------------------------------------------------------------

                 Key: TRINIDAD-2019
                 URL: https://issues.apache.org/jira/browse/TRINIDAD-2019
             Project: MyFaces Trinidad
          Issue Type: Bug
    Affects Versions: 2.0.0-alpha-2, 2.0.0-alpha
            Reporter: Scott O'Bryan
            Assignee: Scott O'Bryan


When  a UIX Collection object is put inside of a component (such as a switcher which has a list of facets) and it then put inside of another panel collection, Mojarra can sometimes change the heirarcy of the stamped component by inserting a UIPanel during a PPR.  This has the effect of generating a ClassCastException when StampState$TableState tries to cast the component to a UIXCollection so that table-in-table can be supported.

This issue ONLY happens in this specific circumstance where the switcher has only one component in the facet and we have a collection inside of another collection.  Although this is a bug with Mojarra, the patch is fairly straight forward and if we see a UIPanel instead of a UIXCollection, we should, instead, sent the StampState to the UIPanel's single child.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (TRINIDAD-2019) ClassCastException on StampState$TableState when using Mojarra

Posted by "Andy Schwartz (JIRA)" <de...@myfaces.apache.org>.
    [ https://issues.apache.org/jira/browse/TRINIDAD-2019?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12985875#action_12985875 ] 

Andy Schwartz commented on TRINIDAD-2019:
-----------------------------------------

We ran into another case where Mojarra was incorrectly inserting a UIPanel wrapper inside of a facet.  See:

http://java.net/jira/browse/JAVASERVERFACES-1726

Is it possible that you are running against a version of Mojarra that does not include this fix (ie. pre-2.0.4)?

Since the incorrect insertion of UIPanel components can have all sorts of unexpected side effects, I would recommend that we attempt to secure a fix for this problem at the Mojarra level rather than working around this in Trinidad. 

> ClassCastException on StampState$TableState when using Mojarra
> --------------------------------------------------------------
>
>                 Key: TRINIDAD-2019
>                 URL: https://issues.apache.org/jira/browse/TRINIDAD-2019
>             Project: MyFaces Trinidad
>          Issue Type: Bug
>    Affects Versions: 2.0.0-alpha, 2.0.0-alpha-2
>            Reporter: Scott O'Bryan
>            Assignee: Scott O'Bryan
>         Attachments: TRINIDAD-2019.patch
>
>
> When  a UIX Collection object is put inside of a component (such as a switcher which has a list of facets) and it then put inside of another panel collection, Mojarra can sometimes change the heirarcy of the stamped component by inserting a UIPanel during a PPR.  This has the effect of generating a ClassCastException when StampState$TableState tries to cast the component to a UIXCollection so that table-in-table can be supported.
> This issue ONLY happens in this specific circumstance where the switcher has only one component in the facet and we have a collection inside of another collection.  Although this is a bug with Mojarra, the patch is fairly straight forward and if we see a UIPanel instead of a UIXCollection, we should, instead, sent the StampState to the UIPanel's single child.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (TRINIDAD-2019) ClassCastException on StampState$TableState when using Mojarra

Posted by "Scott O'Bryan (JIRA)" <de...@myfaces.apache.org>.
     [ https://issues.apache.org/jira/browse/TRINIDAD-2019?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Scott O'Bryan updated TRINIDAD-2019:
------------------------------------

    Status: Patch Available  (was: Open)

> ClassCastException on StampState$TableState when using Mojarra
> --------------------------------------------------------------
>
>                 Key: TRINIDAD-2019
>                 URL: https://issues.apache.org/jira/browse/TRINIDAD-2019
>             Project: MyFaces Trinidad
>          Issue Type: Bug
>    Affects Versions: 2.0.0-alpha, 2.0.0-alpha-2
>            Reporter: Scott O'Bryan
>            Assignee: Scott O'Bryan
>         Attachments: TRINIDAD-2019.patch
>
>
> When  a UIX Collection object is put inside of a component (such as a switcher which has a list of facets) and it then put inside of another panel collection, Mojarra can sometimes change the heirarcy of the stamped component by inserting a UIPanel during a PPR.  This has the effect of generating a ClassCastException when StampState$TableState tries to cast the component to a UIXCollection so that table-in-table can be supported.
> This issue ONLY happens in this specific circumstance where the switcher has only one component in the facet and we have a collection inside of another collection.  Although this is a bug with Mojarra, the patch is fairly straight forward and if we see a UIPanel instead of a UIXCollection, we should, instead, sent the StampState to the UIPanel's single child.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.