You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@myfaces.apache.org by "sean schofield (JIRA)" <de...@myfaces.apache.org> on 2005/11/17 22:01:41 UTC

[jira] Commented: (MYFACES-829) with value bound to an array of int fails

    [ http://issues.apache.org/jira/browse/MYFACES-829?page=comments#action_12357930 ] 

sean schofield commented on MYFACES-829:
----------------------------------------

This is definitely a MyFaces implementation bug.  The validateValue method in UISelectMany assumes the converted values to be an instanceof Object[] or List.  A primitive array automatically causes a validation error (without even checking the values.)  The RI uses a custom iterrator (SelectItemsIterator).  That might be a better approach then the current "if .. else" approach we have (now that we know there are more then two cases.)

> <h:selectManyCheckbox> with value bound to an array of int fails
> ----------------------------------------------------------------
>
>          Key: MYFACES-829
>          URL: http://issues.apache.org/jira/browse/MYFACES-829
>      Project: MyFaces
>         Type: Bug
>   Components: Implementation
>     Versions: 1.1.0
>  Environment: Linux, JDK 1.5.0_05
>     Reporter: Craig McClanahan
>     Assignee: sean schofield

>
> The Shale "use cases" example includes a page where an <h:selectManyCheckbox> component is bound to an array of int that represents selected values.  A bug was reported against this app:
>     http://issues/apache.org/bugzilla/show_bug.cgi?id=37361
> However, further investigation shows that this case works correctly with the JSF RI, leading to the belief that it represents an implementation error in MyFaces.  See the above bug report for more details.
> For reference, the page includes the following component:
>     <h:selectManyCheckbox id="categories" layout="pageDirection"
>      value="#{dialog.data.categories}">
>         <h:selectItems value="#{domains.supportedCategories}"/>
>     </h:selectManyCheckbox>
> where the binding expressions point at values of the following types:
> * #{dialog.data.categories} points at an array of int representing
>   the currently selected categories
> * #{domains.supportedCategories} points at an array of SelectItem,
>   where the "value" property of each is an Integer representing the
>   primary key for that category.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira