我自己做了一个模板,在我的web应用程序的所有JSP这使事情变得非常简单:如何避免在包含的JSP文件中重新标记标记库?
<%@ include file="header.jsp" %>
<!-- Put unique content here -->
<%@ include file="footer.jsp" %>
我决定将我的导航菜单了header.jsp中的到自己的文件,因为它是越来越大。我把菜单的代码放到了menu.jsp中。下面是如何包括在我的header.jsp中的容貌:
<html>
<head>
<title>My JSP</title>
</head>
<body>
<jsp:include page = "menu.jsp"/>
......
然而,引入了menu.jsp不会工作,除非我也把这一行是:
<%@ taglib prefix = "c" uri = "http://java.sun.com/jsp/jstl/core"%>
这已经在我的header.jsp中。我只想不得不把它放在那里。然而,当我尝试使用这种替代语法时才:
<%@ include file="menu.jsp" %>
我得到的WebLogic11克一个错误消息,指出
<%@ include file="header.jsp" %> is self refrencing
我怎么能包括引入了menu.jsp在header.jsp中,而不必包括JSTL在menu.jsp中?
我没有这样看。我的想法是尽可能少地重复。我也在想,如果我的解决方案是“错误的方式” – Steve
@Steve它是Java,你注定要重复;)使用动态包括也允许真正简单的模板没有Tiles/SiteMesh /等的复杂性。力量较小,但往往绰绰有余。 –
大声笑。我正在学习春天。 AOP给我留下了非常深刻的印象,其他方式“新东西”(对我来说)正在减少很多代码。 – Steve