我有 Spring MVC 和 spring boot,我也使用 JSP 文件作为 View 。 我已经使用了 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 Include 标记时
<jsp:include page="sidemenu.jsp" flush="true"></jsp:include>
它不起作用!,sidemenu JSP 文件的内容不包含在页面中,而且根本没有错误消息。
是否有我遗漏的页面设置或配置? 或者标签不能在 Spring Boot MVC 项目中使用??
最佳答案
以上应该可以完美工作。唯一的问题可能是 sidemenu.jsp 文件位置。
因此,尝试使用如下所示的方法来帮助查找要包含的 jsp 页面。
<jsp:include page="/WEB-INF/JSPs/header/navigation.jsp"></jsp:include>
或者
<jsp:include page="../sidemenu.jsp"></jsp:include>
//如果是上层目录
关于java - Spring Boot MVC 在另一个 JSP 文件中包含 JSP 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53825854/