Ref.: "JRBeanCollectionDataSource com Properties"

Bom dia!

Minha dúvida é sobre “JRBeanCollectionDataSource com Properties”.

Ao invés de passar um ArrayList de Object´s, porque não posso passar um ArraList de Properties?

Tem que haver uma forma do Report entender isso.

Quem pode me ajudar?

                    ArrayList<Object> alItens = new ArrayList<Object>();   
                       
                    Properties pItens = new Properties();   
                    pItens.put("NumItem", 1);   
                    pItens.put("Local", "Local 1");   
                    pItens.put("Defeito", "Defeito 1");   
                    pItens.put("Descricao", "Descricao 1");   
                    alItens.add(pItens);   
                       
                    Properties pItens2 = new Properties();   
                    pItens2.put("NumItem", 2);   
                    pItens2.put("Local", "Local 2");   
                    pItens2.put("Defeito", "Defeito 2");   
                    pItens2.put("Descricao", "Descricao 2");   
                    alItens.add(pItens2);   
                       
                    Properties pItens3 = new Properties();   
                    pItens3.put("NumItem", 3);   
                    pItens3.put("Local", "Local 3");   
                    pItens3.put("Defeito", "Defeito 3");   
                    pItens3.put("Descricao", "Descricao 3");   
                    alItens.add(pItens3);   
                       
//                  ItemVO vo = new ItemVO();   
//                  vo.setNumItem(new Integer(1));   
//                  vo.setLocal("Local 1");   
//                  vo.setDefeito("Defeito 1");   
//                  vo.setDescricao("Descricao 1");   
//                  alItens.add(vo);   
//                     
//                  vo = new ItemVO();   
//                  vo.setNumItem(new Integer(2));   
//                  vo.setLocal("Local 2");   
//                  vo.setDefeito("Defeito 2");   
//                  vo.setDescricao("Descricao 2");   
//                  alItens.add(vo);   
//   
//                  vo = new ItemVO();   
//                  vo.setNumItem(new Integer(3));   
//                  vo.setLocal("Local 3");   
//                  vo.setDefeito("Defeito 3");   
//                  vo.setDescricao("Descricao 3");   
//                  alItens.add(vo);   
  
                    JRBeanCollectionDataSource bcdsItens = new JRBeanCollectionDataSource(alItens);