У меня есть объект A, который имеет в качестве переменной экземпляра коллекцию объектов Bs. Пример:
public class A{
String name;
List<B> myList;
...
public List<B> getMyList(){
return myList;
}
...
}
Я хочу, чтобы экземпляр A был only источником информации, которую получает отчет о яшме. В настоящее время я делаю что-то вроде:
A myObjectA = new A(...);
InputStream reportFile = MyPage.this.getClass().getResourceAsStream("test.jrxml");
HashMap<String, Object> parameters = new HashMap<String, Object>();
parameters.put("objectA", myObjectA);
...
JasperReport report = JasperCompileManager.compileReport(reportFile);
JasperPrint print = JasperFillManager.fillReport(report, parameters, new JRBeanCollectionDataSource(myObjectA.getMyList()));
return JasperExportManager.exportReportToPdf(print);
тем самым передавая два источника информации :
- объект A как конкретный параметр и
- коллекция объекта B, находящегося в A в качестве источника данных бина
Я хочу передать один источник информации только: objectA; и оставьте источник данных как JREmptyDataSource (). Можно ли перебирать myList в отчете? Даже если есть пустой источник данных?
В более общем плане:
Как мне перебрать Bs в A, передавая только A?
Спасибо!