Spring Boot MVC Включите файл JSP в другой файл JSP - PullRequest
0 голосов
/ 18 декабря 2018

У меня Spring MVC с пружинной загрузкой, также я использую файл JSP для просмотра.Я уже использую библиотеки JSP и JSTL

    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>jstl</artifactId>
    </dependency>

    <dependency>
        <groupId>org.apache.tomcat.embed</groupId>
        <artifactId>tomcat-embed-jasper</artifactId>
        <scope>provided</scope>
    </dependency>

У меня нет проблем с синтаксисом JSP и JSTL, например

<c:set var="heading" scope="page" value="${0}" />

 <c:forEach var="menuGroup" items="${menuGroups}">
   <c:if test="${menuGroup.headingId != heading}">
       <c:if test="${menuGroup.headingIsDisplayed == 1}">
            <li class="menu-title text-white">${menuGroup.headingTitle}</li>
    </c:if> 
    <c:set var="heading" scope="page" value="${menuGroup.headingId}" />

 </c:if>

    <li class="has_sub">
     <a href="index.html" class="waves-effect">
        <i class="ti-home"></i>
        <span> ${menuGroup.menuGroupTitle}</span>
        <span class="pull-right"><i class="mdi mdi-chevron-right"></i> 
   </span>
    </a>

    <ul class="list-unstyled">

        <c:forEach var="menu" items="${menuGroup.menus}">

            <li><a href="${menu.menuPath}">${menu.menuTitle}</a></li>
        </c:forEach>

    </ul>
  </li>


 </c:forEach>

Но когда я использую тег включения JSP

      <jsp:include page="sidemenu.jsp" flush="true"></jsp:include>

Это не работает !, содержимое JSP-файла бокового меню не включено в страницу, а также вообще отсутствует сообщение об ошибке.

Есть ли какие-либо настройки страницы или конфигурации, которые я пропустил?Или тег нельзя использовать в проекте Spring Boot MVC ??

Ответы [ 3 ]

0 голосов
/ 18 декабря 2018

Во-первых, вам нужно найти фактический путь вашего sidemenu.jsp.
Тогда вы должны использовать этот путь при его включении.Вот так

<jsp:include page="../views/jsp/sidemenu.jsp" flush="true"/>
0 голосов
/ 18 декабря 2018

Выше должно работать отлично.единственная проблема может быть связана с расположением файла sidemenu.jsp.

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

<jsp:include page="/WEB-INF/JSPs/header/navigation.jsp"></jsp:include>

ИЛИ

<jsp:include page="../sidemenu.jsp"></jsp:include> // если один верхний каталог

Также см. include-jsps-file-from-another-folder

0 голосов
/ 18 декабря 2018

Почему вы не используете: <%@ include file=/included-file.jsp" %>

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