2016-04-29 44 views
1

我有這樣一個bean:如果我想訪問它的屬性,是否必須將一個bean導入到JasperSoftStudio的類路徑中?

class PersonBean { 
    String name; 
    String lastName; 
} 

我想通過它來碧玉作爲參數,並訪問屬性namelastName。是否必須將PersonBean導入jasper的類路徑以實現它?

這是我打算如何訪問屬性:$P{P_PERSON}.getName()

我試着使用java.lang.Object作爲參數類型,但隨後碧玉試圖投它,那會導致異常。

+0

類有存在被使用。 –

+0

是的,你需要把它放在類路徑,否則它將不會編譯,因爲你的類不能被發現 –

+0

老實說這個問題很奇怪,我不能決定它是否廣泛,你想了解爲什麼java需要類路徑中的類或不清楚你實際上有問題把他們放在課堂路徑? –

回答

0

嘗試把PersonBean類的屬性(名稱和lastName)在地圖中的字符串作爲重點和對象爲值。將此地圖傳遞給碧玉報告。 像:

Map<String, Object> map = new HashMap<>(); 
PersonBean person = new PersonBean(); 
map.put("NAME", person.getName()); 
map.put("LASTNAME", person.getLastName()); 

通過這個地圖在編譯它的時候你的碧玉報告。 同時在jasper報告中創建NAME和LASTNAME參數。您可以設置參數類型爲字符串

0

我的問題是缺少的重要組成部分,我糾正它,這裏是答案:

不一定!

如果編譯內JasperSoftStudio的報告,是的,你需要進口豆。 如果沒有,那就沒有必要了,那就是我的情況,我在運行時編譯報告。

總之:您需要在類路徑中類編譯和運行(明顯),在我的情況,因爲我只是設計在JasperSoftStudio的報告,這是沒有必要的。

相關問題