Я пытаюсь (и учусь) создавать веб-фреймворк 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
, заполненный данными из определенной таблицы