• ベストアンサー

strutsでArrayListの中の配列の表示の仕方。

タイトルどおりなんですが。よくわかりません。例えば以下のようです。numberに紐づいた複数のデータが配列に入っています。 public static Bean setBean (int number, String[] strArray){ bean.setNumber(number); bean.setArray(strArray); return bean; } たいぶ、はしょってますがこんな感じでbeanにintのnumberとStringの配列をsetして、受け取り側でそのbeanをArrayList(array)にaddしています。それをjspで表示したいのです。jspは下のようです。 <logic:iterate name="form" property="array" id="list" > <bean:write name="list" property="number"> ここにstrArrayを表示したい。 </logic:iterate>  といった具合です。どお書けばいいんでしょうか?ご教授お願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.3

>ArrayListにbeanをsetしています。 ArrayListにbeanをセットしてあって、 beanにString配列をセットして、 beanで持ってるArrayListにString配列をセットしてある。 ってことでいいんですか? 複雑ですね。 ActionからJSPにはどうやって渡してますか? で、先の参考URLは読みました?

参考URL:
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=21965&forum=12
すると、全ての回答が全文表示されます。

その他の回答 (2)

回答No.2

うーんとActionでどのようにセットしてるかわからないので、 bean:writeタグ http://www.techscore.com/tech/Java/Struts/4.html logic:iterateタグ http://www.techscore.com/tech/Java/Struts/8.html を読んでみて下さい。 何かありましたら補足して下さい。

satosai
質問者

補足

Actionの中で、ArrayListにbeanをsetしています。

すると、全ての回答が全文表示されます。
noname#49664
noname#49664
回答No.1

実際に試してないので違ってるかもしれませんが、こんな感じで出ないでしょうか。 <logic:iterate name="form" property="array" id="list" > <bean:write name="list" property="number"> <logic:iterate collection="<%=list.getArray()%>" id="strlist" > <bean:write name="strlist"> </logic:iterate> </logic:iterate> 考え方としては、内側に更に<logic:iterate>を用意して、取り出したBean内のString配列のArrayをcollectionに渡して回せばいいように思いますが・・。ちょっと手元に実行環境が今ないので、動かなかったらごめんなさい。

satosai
質問者

お礼

昨日はアドバイスありがとうございました。なんとか解決できました。

satosai
質問者

補足

残念ながらこれではできませんでした。

すると、全ての回答が全文表示されます。

関連するQ&A