내가 달성하고 싶은 것은 asp.net의 마스터 페이지와 비슷한 것이다. tutorial을 따르고 있지만, header.jspf와 footer.jspf를 WEB-INF/jspf 폴더에 추가하고 index.jsp를 WEB-INF 외부에 추가했기 때문에 뭔가 놓친 것 같습니다. 특정 JSP 페이지가 자동으로 머리글과 바닥 글을 추가하도록 web.xml에 정보를 추가했습니다. 문제는 index.jsp가 WEB-INF 폴더 안의 아무 것도 액세스 할 수 없지만이 튜토리얼의 이전 단계에서 해결했다고 생각할 수 있습니다. 프로젝트를 실행할 때 머리글과 바닥 글을 모두 제거한 후 index.jsp의 왼쪽에있는 것을 얻습니다.jsp : include?를 사용하지 않고 jsp 페이지에 jspf 파일을 추가 할 수 있습니까?
<%@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>
사용하지 않으려는 이유는 <% @ 파일을 포함 = "헤더 .jspf "%> 및 <.. jsp : include ...> ?? – Javaguru
글쎄, 그냥 모든 물건에 같은 물건을 추가 할 필요가 없으면 좋겠다.하지만 각 줄에 2 줄을 추가하는 것은 문제가되지 않는다. web.xml 파일을 통해 머리말과 꼬리말을 추가하는 방법이 있는지 알고 싶었습니다. –
그래서 .. SiteMesh를 사용할 수 있습니다. 프로젝트의 모든 페이지에 사용되는 템플리트 페이지를 생성 할 수 있으며 특정 사이트 컨텐츠 만 실제 JSP 사이트에 있습니다. – Javaguru