[ 
https://issues.apache.org/jira/browse/BEANUTILS-492?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15484272#comment-15484272
 ] 

Stian Soiland-Reyes commented on BEANUTILS-492:
-----------------------------------------------

For reference - 
http://download.oracle.com/otndocs/jcp/7224-javabeans-1.01-fr-spec-oth-JSpec/ 
section 7.2 only describes indexed properties of arrays. So it 'accidentally' 
working on List before is no longer always the case (the 
IndexedPropertyDescriptor constructor checks for type mismatches between the 
positional methods and the overall getter - which now must return a proper 
array)

> IndexedPropertyDescriptor not supported for List in Java 8
> ----------------------------------------------------------
>
>                 Key: BEANUTILS-492
>                 URL: https://issues.apache.org/jira/browse/BEANUTILS-492
>             Project: Commons BeanUtils
>          Issue Type: Bug
>    Affects Versions: 1.9.3
>         Environment: maven:3.3-jdk8
>            Reporter: Stian Soiland-Reyes
>            Assignee: Stian Soiland-Reyes
>            Priority: Critical
>             Fix For: 1.9.3
>
>
> With MAven 3.3 and JDK 8, Common Beanutils fails:
> https://builds.apache.org/view/Apache%20Commons/job/Commons%20Beanutils%20docker/4/console
> {code}
> Failed tests: 
>   IndexedPropertyTestCase.testArrayListIndexedPropertyDescriptor:175 Not 
> IndexedPropertyDescriptor expected:<class 
> java.beans.IndexedPropertyDescriptor> but was:<class 
> java.beans.PropertyDescriptor>
>   IndexedPropertyTestCase.testArrayListReadMethod:316 Threw exception 
> java.lang.ClassCastException: java.beans.PropertyDescriptor cannot be cast to 
> java.beans.IndexedPropertyDescriptor
>   IndexedPropertyTestCase.testArrayListWriteMethod:330 Threw exception 
> java.lang.ClassCastException: java.beans.PropertyDescriptor cannot be cast to 
> java.beans.IndexedPropertyDescriptor
>   IndexedPropertyTestCase.testListIndexedPropertyDescriptor:156 Not 
> IndexedPropertyDescriptor expected:<class 
> java.beans.IndexedPropertyDescriptor> but was:<class 
> java.beans.PropertyDescriptor>
>   IndexedPropertyTestCase.testListIndexedReadMethod:288 Threw exception 
> java.lang.ClassCastException: java.beans.PropertyDescriptor cannot be cast to 
> java.beans.IndexedPropertyDescriptor
>   IndexedPropertyTestCase.testListIndexedWriteMethod:302 Threw exception 
> java.lang.ClassCastException: java.beans.PropertyDescriptor cannot be cast to 
> java.beans.IndexedPropertyDescriptor
>   IndexedPropertyTestCase.testListReadMethod:256 Threw exception 
> java.lang.ClassCastException: java.beans.PropertyDescriptor cannot be cast to 
> java.beans.IndexedPropertyDescriptor
>   IndexedPropertyTestCase.testListWriteMethod:274 Threw exception 
> java.lang.ClassCastException: java.beans.PropertyDescriptor cannot be cast to 
> java.beans.IndexedPropertyDescriptor
>   Jira422TestCase.testRootBean:36 expected:<java.[lang.String]> but 
> was:<java.[util.List]>
>   Jira422TestCase.testSecondChildBean:42 expected:<java.[lang.String]> but 
> was:<java.[util.List]>
> {code}
> It seems some assumptions about java.beans.PropertyDescriptor implementation 
> are no longer true in JDK 8.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to