Передача объекта с ModelAndView, затем синтаксический анализ с JSTL - PullRequest
2 голосов
/ 14 ноября 2011

Кажется, это должно сработать, но я просто не могу понять, почему, надеясь, что свежий взгляд может заметить то, что должно быть чем-то очень очевидным ...

Я передаю объект измой контроллер к моему файлу jsp, но попытка разобрать объект с EL просто не будет работать, хотя он работает как скриптлет, и это сводит меня с ума:)

Использование Spring 3.0 MVC

Модель:

public class Table {

private String mId;
private ArrayList<Row> mRows;

public String getId() {
    return mId;
}

Контроллер:

Table table = new Table();
table.setId("test");

ModelAndView mav = new ModelAndView();
mav.addObject("table",table);
mav.setViewName("report");

return mav;

Файл JSP:

<!--  this works -->

<%
Table table = (Table)request.getAttribute("table");
System.out.println(table.getId());
%>

<!--  this does not work -->

${table.getId}

Ошибка:

org.apache.jasper.JasperException: An exception occurred processing JSP page /WEB-INF/jsp/report.jsp at line 33

30: 
31:     <!--  this dows not work -->
32: 
33:     ${table.getId}
34: 
35: </body>
36: </html>

javax.el.PropertyNotFoundException: Property 'getId' not found on type com.platform.server.portal.model.Table

1 Ответ

3 голосов
/ 14 ноября 2011

изменить private String mId; на private String id;
и
${table.getId} до ${table.id}

вам не нужно и вы не можете использовать такой метод доступа.

если оно должно быть средним, то изменить

public String getId() до public String getMid()

и

${table.getId} до ${table.mId}

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