选择标记错误Struts 2

时间:2014-06-28 17:31:24

标签: java jsp struts2 ognl struts-action

好吧,我用这个封锁了,我有一个带有2个表格的.jsp,其中一个是根据客户的ID查找宠物,另一个是为其中一个注册服务那些宠物,所以问题是,当我寻找以下形式的宠物,这与宠物动作有关:

<s:form action="searchPets">
<div class="col-xs-3">
    <input type="text" name="customer.id" class="form-ontrol">              
</div>
    <s:submit/>
</s:form>  

我遇到了选择标记的问题,当来自表单&#34; searchPets&#34;的数据时,第一次加载来自ServiceAction的Prepare方法的数据。来到.jsp

<s:select list="employees"
name="GrooService.employee.IdEmp"
listKey="IdEmp"
listValue="nameEmp"
cssClass="form-control"
id="GrooList"
/>

这是我得到的错误

tag 'select', field 'list', name 'GrooService.employee.IdEmp': 
The requested list key 'employees' could not be resolved as a 
collection/array/map/enumeration/iterator type. 
Example: people or people.{name} - [unknown location]

那么,我应该修改什么?如果我从PetsAction加载选择标记的数据也是正确的吗?我应该只为这两种形式采取一项行动吗?

1 个答案:

答案 0 :(得分:0)

只要两个动作都返回包含select标记的相同结果JSP,并且不同的动作类保存动作方法,就必须在两个类中编写prepare()。否则,您可以为这两个操作/方法使用一个操作类。抛出异常是因为list标记的s:select属性不能是null。在返回引用该变量的结果之前,应正确初始化用于标记的变量。