大家好,我正在尝试使用initbinder注释来匹配我从乘法列表框中收到的值。列表框中的值是字符串值。我还没有添加乘法选择),它工作得很好。代码如下:
在控制器我有这个:
@InitBinder
public void initBinderResearch(WebDataBinder b) {
b.registerCustomEditor(Research.class, new ResearchEditor());
}
在调试中,我可以看到research_area值的绑定未成功。但是我没有任何异常或错误。有人可以告诉我我做错了什么吗?
最佳答案
您不能覆盖PropertyEditor.setAsText(List<String> text)
,因为它在父类中不存在,并且WebDataBinder
不会使用此方法进行字符串到对象的转换。
如果您注册原始的ResearchEditor
并将后备表单模型中的属性从类型Research
更改为类型List<Research>
,则WebDataBinder将对其进行转换。
关于java - 用于字符串列表的Initbinder,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11013573/