Как получить доступ к объекту ModelAndView на странице jsp
В моем контроллере есть такой код.
ModelAndView result = new ModelAndView("person/sometrends");
result.addObject("data", data); // data -> Map
На моей странице JSP я написал код Java, который зависит от объекта данных.
Как я могу получить этот объект данных в коде JSP?
Я попробовал что-то вроде этого (псевдокод).
<%
Map x = ${data};
%>
Но это не работает. Не знаете, как получить к нему доступ.
Спасибо
Варуна
Ответы
Ответ 1
В скриптлете вы используете объект запроса следующим образом:
<% Map myMap = (Map) request.getAttribute("data"); %>
Если вы хотите использовать нечто вроде JSTL вместо скрипта, вы можете сделать:
<c:forEach var="entry" items="${data}">
Name: ${entry.key} <br/>
Value: ${entry.value} <br/>
</c:forEach>
Как отметил Давмейстер и новичок, объединение EL внутри сценария было основной причиной вашей ошибки.
Ответ 2
Позвольте мне более конкретно, если вы хотите использовать jsp
вместо jstl
для доступа к Model
, вы сделали бы что-то вроде этого:
<% Map x = (Map)request.getAttribute("data") %>
Ответ 3
Попробуйте следующее:
request.getAttribute("data")
Ответ 4
попробовать <% String username = (String)request.getAttribute("data"); %>
Ответ 5
Использование языка выражения внутри скриптлета будет причиной.
Ответ 6
включают: <%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
а затем...
<%
Map x = ${data};
%>