繁体   English   中英

ModelAndView不向jsp视图返回任何数据

[英]ModelAndView returns no data to jsp views

我正在使用Spring MVC 3,NetBeans

我有以下型号,

public class MarketPlace {

private String status;

public String getStatus() {
    return status;
}

public void setStatus(String status) {
    this.status = status;
}

private String category;

public String getCategory() {
    return category;

}

这是我的控制器方法,

@RequestMapping(value = "/ListApplication.htm", method = RequestMethod.GET)
public ModelAndView ShowForm(HttpServletRequest request) {
    ModelAndView mav = new ModelAndView("ListApplication"); 
    mav.addObject("apps", marketPlaceService.listApplications());
    return mav;
}

marketPlaceService.listApplications()方法返回List。 这是我的看法,

<c:forEach items="${apps}" var="item">
<p>Template Name: ${item.templateName}</p>
<p>Description: ${item.description}</p>
<p>Category: ${item.category}</p>
<p><img " src="${item.templateLogo}" border="0" alt="" /></div></td></p>
<br><br>
</c:forEach>

从调试中我看到列表中至少有20条记录,但jsp视图没有显示任何内容。

编辑 :有趣的是,这段代码正在运行,

 protected ModelAndView handleRequestInternal(
        HttpServletRequest request,
        HttpServletResponse response) throws Exception {
    ModelAndView mav = new ModelAndView("ListApplication");
    mav.addObject("apps", marketPlaceService.listApplications());
    return mav;
}

任何人都可以告诉我原因。

您的<img>标记格式错误:

<img " src="${item.templateLogo}" border="0" alt="" />

应该:

<img src="${item.templateLogo}" border="0" alt="" />

<img/>标记后面也有</div></td> ,不应该存在。

虽然不确定模板名称,描述和类别......也许<img>标签中的拼写错误导致jstl无法正确过滤。

这是我发现如此之快的答案,

    @RequestMapping(value = "/ListApplication.htm", method = RequestMethod.GET)
public String ShowForm(HttpServletRequest request, ModelMap m) {        
    m.addObject("apps", marketPlaceService.listApplications());
    return "ListApplication";
}

欢迎进一步改进。 但是,addObject似乎已被弃用,任何替代方案?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM