Почему мой включенный файл JSP не будет обработан правильно? - PullRequest
1 голос
/ 25 марта 2011

Я пытаюсь (и учусь) создавать веб-фреймворк java и в процессе разработки его генератора кода на основе содержимого базы данных.В процессе создания представления я сталкиваюсь с трудностью, которую не знаю, как ее решить.

Во-первых, я хочу, чтобы все страницы создавались с использованием следующего index.jsp:

<body>
<%@ include file="header.jsp" %>
<hr/>
<%@ include file="body.jsp" %>
<hr/>
<%@ include file="footer.jsp" %>
</body>

И в body.jsp я хочу, чтобы это было так:

  <jsp:include page="${application_modul}" %>

Где application_modul - это атрибут, определенный в его 'контроллере следующим образом:

request.setAttribute("application_modul","user_account\\view_user_account.jsp");

Он может найти файл правильно, но обработанный jsp не тот, который я ожидал.Здесь:

<c:forEach items="[application.models.UserAccountModel@18a49e0, application.models.UserAccountModel@1f82982]" var="item" varStatus="status" > 
<tr> 
....

Вы можете увидеть атрибут items jstl forEach, получивший имя переменной (toString ()) ...

Любая идея, в чем проблема ????

Надеюсь, я правильно описал свою проблему

Большое спасибо!

PS: Я уже создал быстрое решение для этого, но не то, что мне нужно, хотя.В сгенерированном view_user_account.jsp я делаю это так:

<body>
<%@ include file="header.jsp" %>
<hr/>
<c:forEach items="${row}" var="item" varStatus="status" > 
<tr> 
....
<hr/>
<%@ include file="footer.jsp" %>
</body>

Вы можете видеть, что я создаю весь файл здесь ...

РЕДАКТИРОВАНИЕ: PS: $ {row} isArrayList, заполненный данными из определенной таблицы

Ответы [ 2 ]

3 голосов
/ 25 марта 2011

Итак, чтобы подвести итог вашей проблемы в одном предложении, теги JSTL не были проанализированы, и они в конечном итоге просты в генерируемом выводе HTML?

Вам нужно объявить JSTL taglib в верхней части страницы JSP, где вы используете JSTL-теги, чтобы заставить их работать.Для основного тега JSTL это будет

<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
0 голосов
/ 25 марта 2011

Я не уверен, но попробуйте это ...

index.jsp

  <jsp:param name="parameterName" value="{parameterValue | <%= expression %>}" />

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