Я пытаюсь создать свой первый веб-проект с использованием Spring MVC.
У меня проблема, когда я пытаюсь показать переменные, которые были помещены в мою модель.
Но на моей странице см. Мой параметр теста, но мой стол пуст.
Пожалуйста, скажите мне, что я пропустил.Параметр добавлен в модель, но не указан на странице
Im с помощью контроллера плитки, так вот моя плитка home.jsp, где я хочу показать мой список:
<div id="indexLeftColumn">
<div id="welcomeText">
<p>[ cool picture ]</p>
</div>
</div>
<div id="indexRightColumn">
<div id="deviceList">
Table with list of devices</br>
${blah}
<table class="table" border="1">
<thead>
<tr>
<th>Device ID</th>
</tr>
</thead>
<tbody>
<c:forEach items="${hubsIDList}" var="hub" >
<tr>
<td>${hub}</td>
</tr>
</c:forEach>
</tbody>
</table>
</div>
</div>
Вот часть моего контроллера, который добавляет значения и возвращает мой home.jsp I добавлен новый параметр «л» просто, чтобы проверить, что параметры не исчезают в другом месте
@RequestMapping(value = "/home", method = RequestMethod.GET)
public String home(Model model) {
log.info("Loading homepage");
UserDetailsImpl userDetails = (UserDetailsImpl) SecurityContextHolder.getContext().getAuthentication().getPrincipal();
ArrayList<String> hubsID =(ArrayList<String>) userDetails.getParameter("hubsID"); //checked - it's not empty and truly Array list of Strings
model.addAttribute("hubsIDList",hubsID);
model.addAttribute("blah","Test if parameters still here"); //added for test that my parameters aren't dissapear
return "home";
}
А вот мой включают
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib uri="http://tiles.apache.org/tags-tiles" prefix="tiles"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
<%@ taglib uri="http://www.springframework.org/tags" prefix="spring" %>
<%@ taglib uri="http://www.springframework.org/tags/form" prefix="spring_form" %>
<%@ taglib uri="http://www.springframework.org/security/tags" prefix="sec" %>
UPD
Пытались использовать контроллер Metod, как показано ниже, но до сих пор нет результата - тестовый параметр не отображается на странице, но таблица пуста
@RequestMapping(value = "/home", method = RequestMethod.GET)
public ModelAndView home(Model model) {
HashMap<String,Object> modelParams = (HashMap)model.asMap();
log.info("Loading homepage");
UserDetailsImpl userDetails = (UserDetailsImpl) SecurityContextHolder.getContext().getAuthentication().getPrincipal();
ArrayList<String> hubsID =(ArrayList<String>) userDetails.getParameter("hubsID");
modelParams.put("hubsIDList",hubsID);
modelParams.put("blah","Test if parameters still here");
return new ModelAndView("home",modelParams);
}
Что вы имеете в виду, если «параметры не исчезнут в другом месте», вы говорите, что параметр не отображается на странице? – Koitoer
Да, это не отображается – Asprelis