Details
Description
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()
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())
} catch (Exception e)
}
}
•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??
Attachments
Attachments
Issue Links
- relates to
-
BEANUTILS-328 String[ ] to scalar undesired behavior at BeanUtilsBean causes limitations on designing custom Converters
- Open