【发布时间】:2014-09-14 04:29:42
【问题描述】:
我想将 jsp 代码行包含到另一个 jsp 文件中,其中 servlet 只能看到两个文件中附加的代码行。我希望它一次构建文件,而不是先包含页面,然后是父页面。
我做了什么:
我在使用包含文件时遇到了服务器错误。当我使用包含页面时,它首先构建了包含页面。尝试使用标签进行模板化,但我一直收到如下所示的错误,但所有代码都是从另一个 stackoverflow 答案复制和粘贴的。
HTTP 状态 500 - /web/templateTest.jsp(第 4 行,第 0 列)在导入的前缀为“t”的标签库中没有定义标签“genericpage”
我主要只是想回答我的问题,即是否有办法包含文件以便将它们作为一个整体阅读。但是,如果有人可以识别它,很高兴知道我在标签上做错了什么。这是我的 templateTest.jsp
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@taglib prefix="t" tagdir="/WEB-INF/tags" %>
<t:genericpage>
<jsp:attribute name="header">
<h1>Welcome</h1>
</jsp:attribute>
<jsp:attribute name="footer">
<p id="copyright">Copyright 1927, Future Bits When There Be Bits Inc.</p>
</jsp:attribute>
<jsp:body>
<p>Hi I'm the heart of the message</p>
</jsp:body>
</t:genericpage>
下面是我在 WEB-INF/tags 文件夹中的 genericpage.tag 文件
<%@tag description="Overall Page template" pageEncoding="UTF-8"%>
<%@attribute name="header" fragment="true" %>
<%@attribute name="footer" fragment="true" %>
<html>
<body>
<div id="pageheader">
<jsp:invoke fragment="header"/>
</div>
<div id="body">
<jsp:doBody/>
</div>
<div id="pagefooter">
<jsp:invoke fragment="footer"/>
</div>
</body>
</html>
我再说一遍,我主要只是想回答我的问题,即是否有办法包含文件以便将它们作为一个整体阅读。但是,如果有人可以识别它,我很高兴知道我在标签上做错了什么。
【问题讨论】:
-
提供相关代码来复制您的问题。