Java 页面无法为bean name';加载BindingResult或普通目标对象';作为请求属性“提供”;
“bean名称“relationForm”的BindingResult或普通目标对象都不能作为请求属性使用” 我对上面的错误有一些问题,我将在这里发布代码的重要部分 非常感谢你们的任何想法 controller.javaJava 页面无法为bean name';加载BindingResult或普通目标对象';作为请求属性“提供”;,java,spring-mvc,modelattribute,Java,Spring Mvc,Modelattribute,“bean名称“relationForm”的BindingResult或普通目标对象都不能作为请求属性使用” 我对上面的错误有一些问题,我将在这里发布代码的重要部分 非常感谢你们的任何想法 controller.java @RequestMapping(value = "addremoverelation/{caseId}", method = RequestMethod.POST) public ModelAndView addRelation( @ModelAttribute("relati
@RequestMapping(value = "addremoverelation/{caseId}", method = RequestMethod.POST)
public ModelAndView addRelation( @ModelAttribute("relationForm") CaseCompleteForm ccf,
@PathVariable Long caseId,HttpServletRequest request, BindingResult result) {
//my code
}
jsp文件
<form:form action="${pageRoot}case/addremoverelation/${caseBase.id}" method="post" id="CaseCompleteForm" modelAttribute="relationForm"> <div>....</div>
。。。。
创建页面时,您可能没有将“relationForm”对象传递给表单。准备页面时,尝试将其添加为模型属性
@RenderMapping
public String viewPage(Model model)
{
if(relForm == null)
{
RelationForm relForm = new RelationForm();
model.addAttribute("relationForm", relForm);
}
return "your/view/jsp/file";
}
希望你明白我的意思。如果您遇到任何进一步的问题,请在注释中回复。将您的
BindingResult
对象放在控制器方法中其bean旁边。他们必须挨在一起。不知道什么是“豆子”。。。但你是说我必须改变论点的顺序吗?这样地?public ModelAndView addRelation(@ModelAttribute(“relationForm”)CaseCompleteForm ccf,BindingResult@PathVariable Long caseId,HttpServletRequest请求)是的,请尝试启动。BindingResult
需要遵循它应该表示的对象实例。看看Spring文档,了解bean是什么很重要。解决了它!但问题不在上面。我在形式课上犯了一些容易犯的错误。我看了下面的链接,发现了一切。2,我忘记在buildPage函数映射中添加以下行。addAttribute(“relationForm”,ccf);谢谢Sotirios的支持!你的话帮了我的忙你可能想自己加一个答案,因为你知道细节。以后可能会帮助别人。