2011-10-23 21 views
1

1つのオブジェクトに関する情報を表示するレポートを生成する必要があります(入力は1つのBeanのみなので)。Jasperレポート、Bean内のリスト/配列を渡す

最初の問題は、 - このBeanにはのサブビーンののリスト(コメント、コメントタイプ、コメント日付など)が含まれている必要があります。だから私はサブレポートにそれらを渡すことができます。

第2の問題は、配列の4つのサブビーンで、フィールドがほとんどないことです。私は(firstSubBeanName、secondSubBeanName ...)各サブBeanのプロパティに別のフィールドを作成することができますが、それは理想的には、このような方法で、これらのBeanにアクセスする方法があるはず:(醜いです:。

$F{test}[0].name 

あなたのリストは、(すなわち、オブジェクトのプロパティである)の名前を持っている場合は助けてください。

+0

、これは動作しないでしょう、なぜ私は表示されませんが、フィールドがで宣言されていることを提供しました適切な型(つまり、com.foo.bar.SomeBean [])。あなたはそれを試しましたか?何かエラーがありますか? –

+0

さて、私は型の配列を指定する方法を知りませんでした。少なくともジェネリックでは動作しません。しかし、リストとうまくいくので、問題は解決されます。 – StKiller

答えて

2

を、あなたは持っているだけで、サブレポートはに準備する必要があります

$F{subBeansList} 

サブレポートのデータソースの表現として、このプロパティを渡しますそのような種類のデータを受け取ることができます。ストラットを使用している場合は、サブレポートに渡されるリストのフィールド上の仲介者として

​​3210

:このクラスを使用するULD。

2番目の質問、簡単な方法は、あなたがこの表現を使うことができますので、リストを使用することです:

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

ありがとう、それは動作します:) – StKiller

関連する問題