- PR -

2次元配列をJSPで出力

投稿者投稿内容
にぃにぃ
ベテラン
会議室デビュー日: 2006/10/19
投稿数: 70
投稿日時: 2006-10-26 15:46
いつもお世話になっております。
StrutsによるJSPの画面への出力についてですが、
2次元配列を表示する事は可能でしょうか。

一次元の配列を出力するサンプルは例として
Web上でも公開されていますが、2次元配列を出力する際にどうしていいのか
頭を悩ましています。誰か分かる方いらっしゃいましたら、宜しくお願いします。
mio
ぬし
会議室デビュー日: 2005/08/25
投稿数: 734
お住まい・勤務地: 神奈川県
投稿日時: 2006-10-26 15:54
状況がいまいち見えませんが…。
通常のJavaアプリで二次元配列を、標準出力に表示することはできますか?
nagise
ぬし
会議室デビュー日: 2006/05/19
投稿数: 1141
投稿日時: 2006-10-26 16:06
引用:

初心者マークさんの書き込み (2006-10-26 15:46) より:
StrutsによるJSPの画面への出力についてですが、
2次元配列を表示する事は可能でしょうか。



<logic:iterate>を二重にしてやればできた筈。

# 最近JSTLのタグばかり使っていたのでサンプル書こうと思ったら自信がなかったorz
にぃにぃ
ベテラン
会議室デビュー日: 2006/10/19
投稿数: 70
投稿日時: 2006-10-26 16:36
実は標準出力もできないのです。

<bean:writeを使っても出力されるのは
[Ljava.lang.String;@805298と
表示されます。メモリのアドレスのようにも見えるのですが・・
1次元配列だと正常出力されます。
想馬
大ベテラン
会議室デビュー日: 2003/05/29
投稿数: 245
お住まい・勤務地: 神奈川・東京
投稿日時: 2006-10-26 16:51
引用:

初心者マークさんの書き込み (2006-10-26 16:36) より:
実は標準出力もできないのです。

<bean:writeを使っても出力されるのは
[Ljava.lang.String;@805298と
表示されます。メモリのアドレスのようにも見えるのですが・・
1次元配列だと正常出力されます。



配列の中の配列をそのまま表示しているのでは?
_________________
己への戒め

「活動的な馬鹿より恐ろしいものはない」 by ゲーテ
にぃにぃ
ベテラン
会議室デビュー日: 2006/10/19
投稿数: 70
投稿日時: 2006-10-26 17:02
簡単なサンプルを作ったのですが、やはり同じようなメモリのアドレスらしきものが
表示されます。

<sample.jsp>
<% String[][] arrayStr={{"aaa","bbb"},{"ccc"}{"ddd"}}; %>
<logic:iterate id="array" collection='<%= arrayStr %>' >
<bean:write name="array" />
</logic:iterate>

上記とよく似た例で一次元配列を使った表示は正常にできます。
nagise
ぬし
会議室デビュー日: 2006/05/19
投稿数: 1141
投稿日時: 2006-10-26 17:38
コード:
<% String[][] arrayStr={{"aaa","bbb"},{"ccc"}{"ddd"}}; %> 
<logic:iterate id="array" collection='<%= arrayStr %>' > 
  <logic:iterate id="array2" collection="array" > 
    <bean:write name="array2" /> 
  </logic:iterate>
</logic:iterate>



みたいな感じでどうですか?(動作未確認)
「<logic:iterate>を二重にしてやれば」の意味が伝われば幸いです。
にぃにぃ
ベテラン
会議室デビュー日: 2006/10/19
投稿数: 70
投稿日時: 2006-10-26 17:51
nagiseさんのコードをのcollection="array"部分を
collection='<%= array %>'をすると正常に
表示されるようになりました。助かりました。ありがとうございました。

スキルアップ/キャリアアップ(JOB@IT)