ModelAndView не возвращает данные в представления jsp - PullRequest
1 голос
/ 27 сентября 2011

Я использую 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;
}

Может кто-нибудь подскажет причину.

Ответы [ 2 ]

2 голосов
/ 28 сентября 2011

Это ответ, который я нашел так быстро,

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

Любые дальнейшие улучшения приветствуются.Тем не менее, addObject кажется устаревшим, любая альтернатива?

2 голосов
/ 27 сентября 2011

Ваш тег <img> неправильно сформирован:

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

Должен быть:

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

У вас также есть </div></td> после тега <img/>, который не должен бытьтам.

Не уверен насчет имени шаблона, описания и категории, хотя ... Возможно, опечатка в теге <img> приводит к неправильной фильтрации jstl.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...