我在我的网络应用程序中使用 Tiles。我在瓷砖中使用了标准布局 (standard.jsp)。在 standard.jsp 之上有很多包含,涉及标签库等。
让我们做一个简化的例子。
标准.jsp:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ include file="/WEB-INF/jsp/includes/include.jsp" %>
<html>
<head>
<tiles:insertAttribute name="head" flush="false"/>
</head>
<body>
<tiles:insertAttribute name="body" flush="false"/>
</body>
</html>
正文.jsp:
<div id="body-div">
<p>Hello, <c:out value="${forname}" />!</p>
</div>
这打印:
Hello, !
我想在磁贴中使用标签,但它不起作用。只有当我将包含项添加到 tile-jsp 时,它才有效。
body.jsp 包含:
<%@ include file="/WEB-INF/jsp/includes/include.jsp" %>
<div id="body-div">
<p>Hello, <c:out value="${forname}" />!</p>
</div>
这打印:
Hello, John!
是否有更好的方法来执行此操作,还是我必须将所有包含添加到使用的每个 jsp 中?
最佳答案
您不需要所有包含都出现在您的每个磁贴中,但磁贴中每个使用的标签库都必须明确包含在使用磁贴中。
例如:
在您的示例中,使用 C JSTL 库的每个图 block 至少应具有 <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
包括
关于java - 我是否必须在 Apache Tiles 中的每个 tile 中包含库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/535821/