問:Error retrieving field value from bean :XX ;NoSuchMetho dException:Unknown property 'XX' on class 'class 'com.report.Parent'
答:public class Parent{
private List<Son> sonList; //用來顯示錶格
private List<Car> carList;
省略get/set方法
}
可以看到我的頂級Bean類中包括了Son.java和Car.java,這個時候導入jar包中應該包括這三個文件(1.eclipse中選擇這三個java文件,右鍵export——jar file——Export generated class files and resources;2.ireport中工具——選項——ireport——classpath,導入jar包,勾中複選框),否則會報ClassNotFoundException的異常,導入Jar包後再將bean中的字段映射進來了,Report query——JavaBean Datasource,在Class name下的輸入框中輸入頂級Bean的包名.類名,然後點擊“Read attributes”,導入所有的(除class之外)的字段,注意只用導入頂級父類中的字段就行了,不用導入Son.java和Car.java中的字段,我就是因爲多此一舉,所以才報如上所述的異常。每從組件面板引入一個List,List都會默認對應一個dataset,要在dataset裏添加field,field需與Son、Car中對應的字段一致,此外,需注意不是頂級父類的字段不需求在Fields裏添加。
問:報表存在兩個表格,當表格一的內容過多的時候會覆蓋表格二的內容,如何解決?
答:將兩個List分別放在兩個不同的Detail