我有一个填充Collection的某些对象的表单。我用List实现了集合(一切都运行良好),但现在我想使用Set。我有一个注册的属性编辑器来创建对象。问题是我不知道填充Set的对象必须使用什么语法。
public class MyObject(){
Set<OtherObject> otherObjects = new HashSet();
}
我已尝试使用表单标记中的语法,例如语法列表:
name="otherObjects['${status.index}']"
和地图的语法一样:
name="otherObjects['${id}']"
但两者都出错了,因为“索引属性路径'otherObjects [0]'中引用的属性既不是数组也不是List也不是Map”
我也试过
name="otherObjects"
但这不会填充对象。 任何人都可以告诉我如何将数据绑定到Set中的对象。
由于
答案 0 :(得分:13)
根据documentation on data binding,您只能使用括号表示法绑定到“自然排序的集合”中的嵌套对象。一套不合格。
答案 1 :(得分:0)
你不能在表单标签中使用旧语法并添加一个将返回一组对象的getter吗?
public class MyObject(){
List<OtherObject> otherObjectsList = new ArrayList<OtherObjects>();
public Set<OtherObject> getOtherObject()
{
return new HashSet<OtherObject>(otherObjectsList);
}
}