我可以提交引用POJO(即不仅仅是String或者boolean)字段的Struts表单吗?
时间:2020-03-05 18:53:44 来源:igfitidea点击:
我有一个Struts(1.3x)ActionForm,它具有多个String和boolean属性/字段,但也具有一些POJO字段。
所以我的表格看起来像:
MyForm extends ActionForm { private String name; private int id; private Thing thing; ...getters/setters... }
因此,在JSP中,我可以引用POJO的字段:
<html:text property="thing.thingName" />
...并且值正确显示,但是如果我尝试提交表单,则会出现ServletException:BeanUtils.populate错误。
Web上似乎有很多有关此一般主题的信息,但没有一个能真正解决我的特定问题,即我是否应该能够在Struts中提交包含POJO字段的表单?
解决方案
回答
我们可以,只要字段遵循JavaBean约定,并且setter接受Struts可以理解的内容。
所以Thing
需要getThingName()
和setThingName(String)
。