[Seasar-user:17262] [teeda] Listを使用したforEachの表示について
木村 究道
[E-MAIL ADDRESS DELETED]
2009年 4月 17日 (金) 13:18:59 JST
お世話になっております、木村と申します。
早速ですが、Listを使用してforEachで入力可能な表を表示
し、ボタン押下で表示内容を変更したいのですが、最初に
設定した値が引き継がれて、内容が変わりません。
doメソッドのreturnのところでは値が期待通り変わってい
るのですが、表示すると値が戻っています。
http://d.hatena.ne.jp/kimpo/20080122/1201002533
↑を参照したところ、returnでクラスを指定すると良いと
書いてありましたので、自クラス名を返すように変えたと
ころ、期待通りに動きました。
しかし、nullにも対応したとのコメントが付いていました。
開発中のプロジェクトで、再表示の時はnull返すルールと
してしまったため、nullを使いたいのですが、回避方法は
ないでしょうか?
よろしくお願い致します。
バージョン
Seasar2 2.4.25
Teeda 1.0.13-SP1
サンプル
public class ListTestPage {
List<ListTestDto> listDtoItems;
String aaa;
String bbb;
public String initialize() {
// this.listDtoItems = new ArrayList<ListTestDto>();
//
// ListTestDto listDto1 = new ListTestDto();
// listDto1.setAaa("init_A");
// listDto1.setBbb("init_B");
// this.listDtoItems.add(listDto1);
return null;
}
public String doTest1() {
this.listDtoItems = new ArrayList<ListTestDto>();
ListTestDto listDto1 = new ListTestDto();
listDto1.setAaa("test1_1A");
listDto1.setBbb("test1_1B");
this.listDtoItems.add(listDto1);
ListTestDto listDto2 = new ListTestDto();
listDto2.setAaa("test1_2A");
listDto2.setBbb("test1_2B");
this.listDtoItems.add(listDto2);
return null;
}
public String doTest2() {
this.listDtoItems = new ArrayList<ListTestDto>();
ListTestDto listDto1 = new ListTestDto();
listDto1.setAaa("test2_1A");
listDto1.setBbb("test2_1B");
this.listDtoItems.add(listDto1);
ListTestDto listDto2 = new ListTestDto();
listDto2.setAaa("test2_2A");
listDto2.setBbb("test2_2B");
this.listDtoItems.add(listDto2);
ListTestDto listDto3 = new ListTestDto();
listDto3.setAaa("test2_3A");
listDto3.setBbb("test2_3B");
this.listDtoItems.add(listDto3);
return null;
}
public List<ListTestDto> getListDtoItems() {
return this.listDtoItems;
}
public void setListDtoItems(List<ListTestDto> listDtoItems) {
this.listDtoItems = listDtoItems;
}
public String getAaa() {
return this.aaa;
}
public void setAaa(String aaa) {
this.aaa = aaa;
}
public String getBbb() {
return this.bbb;
}
public void setBbb(String bbb) {
this.bbb = bbb;
}
}
public class ListTestDto implements Serializable {
private static final long serialVersionUID = 1L;
private String aaa;
private String bbb;
public String getAaa() {
return this.aaa;
}
public void setAaa(String aaa) {
this.aaa = aaa;
}
public String getBbb() {
return this.bbb;
}
public void setBbb(String bbb) {
this.bbb = bbb;
}
}
<body>
<form id="listTestForm">
<table>
<tbody id="listDtoItems" border="1">
<tr>
<td><input id="aaa" /></td>
<td><input id="bbb" /></td>
</tr>
</tbody>
</table>
<input id="doTest1" type="submit" value="test1" />
<input id="doTest2" type="submit" value="test2" />
</form>
</body>
--
-----------------------------------------------------
十八ソフトウェア株式会社
システム開発部 アプリケーション開発課 木村 究道
〒850-0861 長崎市江戸町6-5江戸町センタービル6F
TEL:095-824-0018 FAX:095-827-8754
E-mail: [E-MAIL ADDRESS DELETED]
-----------------------------------------------------
Seasar-user メーリングリストの案内