我是新的struts2。我建了一个页面,显示了员工列表。我可以通过应用过滤条件并点击查找按钮,根据他的名字找到雇员。同时,我在左侧提供了每个员工姓名的复选框以进行删除操作。对于所有复选框,我给出了在Custom Actionclass.deleteaction中声明的Integer []属性名称正常工作。但是,当我单击“查找”按钮时,操作未提交。然后我将Integer []更改为String [],两个函数都正常工作。会有什么问题?是这样的,属性应该只是字符串类型。
答案 0 :(得分:2)
问题的原因是Struts2复选框在操作类上设置了一个布尔属性:
当您将复选框定义为整数时,框架无法将布尔值转换为整数。但是它能够将布尔值转换为字符串。如果在动作类中检查结果,则应该看到填充了“true”和“false”的String []。
一般来说,Struts2非常擅长将提交的表单数据转换为您想要的任何对象类型。有关详细信息,请查看type conversion上的文档。