如何将pojobean绑定到公共头页

6ie5vjzr  于 2021-07-09  发布在  Java
关注(0)|答案(1)|浏览(238)

我使用springtiles框架来Map视图,每个页面都包含标题(一个常见的jsp标题页)+正文(真实视图)。
这个 tiles-definition.xml 如下所示:

<definition extends="defaultTemplate" name="dashboard">
    <put-attribute name="header" value="/WEB-INF/jsp/home/mainPageHeader.jsp" />
    <put-attribute name="body" value="/WEB-INF/jsp/home/dashboard.jsp" />
 </definition>

直到现在, mainPageHeader.jsp 以前是静态页面,但现在我想将一些bean也绑定到这个头页。但它不起作用,我试着如下在我的生活 dashboard 控制器:

ModelAndView model = new ModelAndView("dashboard");
model.addObject("dashboardBean", dashboardObj); // bean related to dashboard page 
model.addObject("headerBean", headerObject); // new bean sending for header page.
return model;

但当 Jmeter 板页面加载时,我可以看到异常:

Error 500: java.lang.IllegalStateException: Neither BindingResult nor plain target
object for bean name 'headerBean' available as request attribute.

我可以理解这个问题,我传递给模型的headerbean与视图没有关联。但是对于如何用这个普通的头页绑定bean,我们还没有任何线索。

jljoyd4f

jljoyd4f1#

尝试使用addattribute而不是addobject
ModelAndView model = new ModelAndView("dashboard"); model.addAttribute("dashboardBean", dashboardObj); // bean related to dashboard page model.addAttribute("headerBean", headerObject); // new bean sending for header page. return model;

相关问题