

サーブレット側

[code]

    public class data{
    private String id;
    private String name;
    
    public data(String id, String name){
    this.id = id;
    this.name = name;
    } //コンストラクタ
    
    
    ArrayList<Object> list = new ArrayList<>();
    list.add(new data("1","aiueo"));
    list.add(new data("2","kakikukeko"));
    list.add(new data("3","sasisuseso"));
    session.put("data",data);
    
[/code]

[code]

    //jsp側
    <s:property value="session.data" />  //取得できない。
    
    <s:property value="session.data" >
    <s:property value="id" />
    <s:property value="name" />
    </s:property> //これもエラーが起きる
    
[/code]

`<s:property >` タグを使い取得の仕方を教えてください


CC BY-SA 4.0
2018-05-25T13:15:09.363
44261
2022-06-05T06:03:05.327
2018-05-25T14:43:01.193
19110
28615
question
jsp
sessionに入れられた配列の中身をすべて取得したい


EL式で記述したいものと予想します。そうであれば、

[code]

    <s:property value="${session.data}" />
    
[/code]

あるいは、`session`を省略して単に

[code]

    <s:property value="${data}" />
    
[/code]

でどうでしょうか?

＃なお、この方法だと`ArrayList.toString()`と同じ結果になります。  
ですので、クラス`data`のメソッド`toString`をオーバーライドして、メンバ変数の値を文字列化する必要があります。


CC BY-SA 4.0
2018-05-27T11:30:23.143
44297
2018-05-27T11:30:23.143
20098
44261
answer