BeanUtils - 'describe' method returning Incorrect array value
-------------------------------------------------------------
Key: BEANUTILS-409
URL: https://issues.apache.org/jira/browse/BEANUTILS-409
Project: Commons BeanUtils
Issue Type: Bug
Affects Versions: 1.8.3
Environment: commons-beanutils 1.8.3, jdk 1.6.0_20
Reporter: benny
Priority: Critical
I want to convert a bean class to a map (key=the name of the member,value=the
value of the member).
I'm using the method BeanUtils.describe(beanClass);
(I'm using commons-beanutils 1.8.3, jdk 1.6.0_20, on commons-beanutils 1.5 it
works)
The problem is that the return value is incorrect, (the map contain only the
first item from the array),
the code:
public class Demo {
private ArrayList<String> myList = new ArrayList<String>();
public Demo() {
myList.add("first_value");
myList.add("second_value");
}
public ArrayList<String> getMyList() {
return myList;
}
public void setMyList(ArrayList<String> myList) {
this.myList = myList;
}
public static void main(String[] args) {
Demo myBean = new Demo();
try {
Map describe = BeanUtils.describe(myBean);
Iterator it = describe.entrySet().iterator();
while (it.hasNext()) {
Map.Entry pairs = (Map.Entry) it.next();
System.out.println(String.format("key=%s,value=%s",
(String) pairs.getKey(), (String) pairs.getValue()));
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
•The expected output:
key=myList,value=[first_value,second_value]
key=class,value=class $Demo
•But the real output is:
key=myList,value=[first_value]
key=class,value=class $Demo
As you can see the array contains two values but the output(and the map)
contains only one,why??
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira