2011-10-23 49 views
1

我必須生成一個報告,顯示關於一個對象的信息(因此輸入只有一個bean)。Jasper Reports,傳遞一個bean中的列表/數組

第一個問題是 - 這個bean應該包含列表的子bean(例如註釋,註釋類型和註釋日期)。所以我可以將它們傳遞給子報告。

第二個問題是 - 有4個子bean的數組,其中包含幾個字段。我可以創建一個單獨的字段爲每個子bean的屬性(firstSubBeanName,secondSubBeanName ...),但它的醜陋:(理想情況下,應該有一個這樣的方式來訪問這些豆子的方式:

$F{test}[0].name 

請幫助。

+0

我不明白爲什麼這是行不通的,只要該字段聲明與適當的類型(例如com.foo.bar.SomeBean [])。你試過了嗎?你有什麼錯誤嗎? –

+0

那麼,我不知道如何指定類型的'數組'的東西,至少與泛型不起作用。但它可以很好地處理列表,所以問題就解決了。 – StKiller

回答

2

如果您的列表有一個名稱(即是對象的屬性),你只有通過作爲數據源表達子報表此屬性

$F{subBeansList} 

的報表應該準備接收這種類型的數據。如果您使用的是struts,那麼您可能會遇到這種情況uld使用此類:

​​3210

作爲您的列表中的字段傳遞給子報表。

第二個問題,最簡單的方法是使用一個列表,這樣你就可以使用這個表達式:

$F{test}.thelist.get(0) 
+0

謝謝,它工作:) – StKiller