[
https://issues.apache.org/jira/browse/MYFACES-3034?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Leonardo Uribe reopened MYFACES-3034:
-------------------------------------
>From users list:
Please help to publish the latest MyFaces 2.0.8-SNAPSHOT
OK, I was thinking that an old MyFaces snapshot is used as I got a failure
in my sample for some changes are done to UIRepeat tag in
MYFACES-3034<https://issues.apache.org/jira/browse/MYFACES-3034> .
After some investigation later, it seems that the changes brought a problem.
If repeat tag is used as :
<ui:repeat var="listing" value="#{myListings.listings}" offset="20">
An exception is always thrown on line 457,
--->
if (size == -1) {
size = end; <-- Should it be size = end - offset ?
}
if (end >= 0) {
if (size < 0) {
throw new FacesException ("iteration size cannot be less " +
"than zero");
}
else if ((begin + size) > end) {
throw new FacesException ("iteration size cannot be greater
" + <--- Exception is always thrown
"than collection size");
> ui:repeat offset and size performs incorrect validation
> -------------------------------------------------------
>
> Key: MYFACES-3034
> URL: https://issues.apache.org/jira/browse/MYFACES-3034
> Project: MyFaces Core
> Issue Type: Bug
> Components: General
> Affects Versions: 2.0.3
> Environment: OpenJDK 1.6.0_20; Tomcat 6.0.20; Ubuntu 10.04 on kernel
> version 2.6.32-28-generic
> Reporter: Rey Dalisay
> Assignee: Leonardo Uribe
> Fix For: 2.0.8, 2.1.2
>
>
> The following ui:repeat tag with those values of size and offset throw a
> FacesException with the message: "iteration offset cannot be greater than
> collection size."
> <ui:repeat var="listing" value="#{myListings.listings}" size="19" offset="20">
> It appears that the method _validateAttributes() in the UIRepeat class
> performs the validation incorrectly. It seems to assume that the value of
> size is the size of the collection, rather than the desired iteration size.
> Here is the relevant code from _validateAttributes():
> if ((size > -1) && (begin > size)) {
> throw new FacesException ("iteration offset cannot be greater " +
> "than collection size");
> }
> The exception is thrown in the above case because begin > size, where begin =
> offset = 20.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira