struts2从Form post填充地图的“value”对象

时间:2013-08-26 09:35:10

标签: java jsp map struts2 ognl

我正在使用struts 2.我有一个包含一些布尔值的对象。我有一个HashMap,它包含许多以前由某个键定义的对象。

在我的jsp中,表格中填充了单选按钮。地图的每个键的一行等。 当我回发表单时,我想保存用户设置的选项。但地图似乎没有填充。

我的代码就像:

   MyObject ( with two boolean parameters )

    private Map<String, MyObject> ... (with getter & setter ).

在我的jsp中生成的html是:

    <input type="radio" name="myMap[123].booleanParameter1" id="someId" 
checked="checked" value="true">

etc 

有人可以帮助设置单选按钮的“名称”,以便struts可以填充地图吗?


public class MyObject implements Serializable{

    private Boolean booleanParameter1;
    private Boolean booleanParameter2;

getters & setters here
}

Map<String,MyObject> myMap ... in Action

... JSP

 <s:iterator ...iterates default map values>

 <s:radio label="parameter1" name="myMap['%{key}'].booleanParameter1" list="#{'true':'Yes','false':'No'}" value="%{value.booleanParameter1}" />
<s:radio label="parameter2" name="myMap['%{key}'].booleanParameter2" list="#{'true':'Yes','false':'No'}" value="%{value.booleanParameter2}" />

</s:iterator>

1 个答案:

答案 0 :(得分:0)

找到解决方案。 “MyObject”类没有Default Constructor。 Struts / ognl需要默认构造函数来创建一个对象。