是否可以在不使用 jsp:include 的情况下将 jspf 文件添加到 jsp 页面?
Posted
技术标签:
【中文标题】是否可以在不使用 jsp:include 的情况下将 jspf 文件添加到 jsp 页面?【英文标题】:Is it possible to add jspf files to a jsp page without using jsp:include? 【发布时间】:2011-11-28 23:42:36 【问题描述】:我想要实现的是类似于 asp.net 中的母版页。我正在关注tutorial,但我可能遗漏了一些东西,因为我已将 header.jspf 和 footer.jspf 添加到 WEB-INF/jspf 文件夹中,并且 index.jsp 在 WEB-INF 之外。我在 web.xml 中添加了信息,以便某些 jsp 页面应该自动添加页眉和页脚。问题可能是 index.jsp 无法访问 WEB-INF 文件夹中的任何内容,但我认为我已经在本教程的上一步中解决了这个问题。当我运行这个项目时,我得到的只是在我删除所有页眉和页脚之后剩下的 index.jsp。
我不想使用:<%@include file="header.jspf" %>
和 <..jsp:include...>
。
截图:
web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
<jsp-config>
<jsp-property-group>
<description>header and footer settings</description>
<url-pattern>/index.jsp</url-pattern>
<url-pattern>/WEB-INF/view/*</url-pattern>
<include-prelude>/WEB-INF/jspf/header.jspf</include-prelude>
<include-coda>/WEB-INF/jspf/footer.jspf</include-coda>
</jsp-property-group>
</jsp-config>
</web-app>
header.jspf:
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Webshop</title>
</head>
<body>
<h1>Webshop</h1>
footer.jspf:
</body>
</html>
【问题讨论】:
为什么你不想使用 和我也在做那个教程,当我使用Tomcat作为服务器时,它不会包含页眉和页脚,我必须使用glassfish服务器,有什么方法可以让tomcat包含页眉和页脚页脚?
编辑:
用这个替换默认标签似乎已经解决了使用tomcat作为服务器的问题
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/TR/xmlschema-1/"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4">
【讨论】:
欢迎来到 ***。请使用右上角的 按钮提出新问题。以上是关于是否可以在不使用 jsp:include 的情况下将 jspf 文件添加到 jsp 页面?的主要内容,如果未能解决你的问题,请参考以下文章