从多选中设置多个javabeans属性

时间:2015-11-01 22:16:08

标签: java jsp struts2 multiple-select struts-tags

我有一个类似

的动作
MyObject

public class MyObject { private String propertyA; private String propertyB; } 一样:

<s:select/>

接下来,我有一个objectList的Jsp映射到<s:select name = "objectList" list = "objectList" listKey = "propertyA" listValue = "propertyB" value = "%{objectList.{propertyA}}" /> 列表。

input

但每当我发布表单时,都会返回PFObject.fetchAllInBackground(listOfObjects) 结果,并显示以下消息:

  

字段&#34; objectList&#34;

的字段值无效

将这些值传递给操作的正确方法是什么,以便设置List的正确属性?

1 个答案:

答案 0 :(得分:0)

除了使用相同List作为源和目标的伏都教,以及作为值(!)的列表投影之外,错误是:

您正在列出MyObject,将propertyA显示为值,并使用propertyB作为关键字。

但是当你发布选择时,你会发布一个propertyB数组,而不是MyObject数组。

然后你应该这样做:

@Getter         private List<MyObject> sourceObjectList;
        @Setter private List<String>   selectedObjectList;
<s:select name = "selectedObjectList" 
          list = "sourceObjectList" 
       listKey = "propertyA" 
     listValue = "propertyB" 
         value = "%{sourceObjectList.{propertyA}}" />

(龙目岛注释要更清楚)