보기 좋게 정리 된게 없어서 그냥 내가 작성하고 만다 ㅡㅡ;
먼저 struts-config.xml에 tiles설정 화일의 정보를 입력한다. (web.xml은 건들 필요가 없다)
<plug-in className="org.apache.struts.tiles.TilesPlugin"> <set-property property="definitions-config" value="/WEB-INF/config/tiles-defs.xml" /> <set-property property="definitions-debug" value="2" /> <set-property property="definitions-parser-details" value="2" /> <set-property property="definitions-parser-validate" value="true" /> </plug-in>
그 다음 실제로 Tiles을 설정 한다. /WEB-INF/config/tiles-defs.xml 을 생성 그 안에 설정한다.
(Title부분도 여기서 지정할 수 있다. value의 문자열값이 title내용이 된다.)
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE tiles-definitions PUBLIC "-//Apache Software Foundation//DTD Tiles Configuration 1.1//EN" "http://jakarta.apache.org/struts/dtds/tiles-config_1_1.dtd">
<!-- html definition Mappings -->
<tiles-definitions>
<!-- Definition description --> <definition name="mainLayout" path="/jsp/classicLayout.jsp"> <put name="title" value="My First Definition Page" /> <put name="header" value="/jsp/common/header.jsp" /> <put name="footer" value="/jsp/common/footer.jsp" /> <put name="menu" value="/jsp/basic/menu.jsp" /> <put name="body" value="/jsp/basic/helloBody.jsp" /> </definition>
</tiles-definitions>
이제 전체 Layout 파일을 작성한다. /jsp/classicLayout.jsp
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <%@ page language="java" contentType="text/html; charset=EUC-KR" %> <%@ taglib uri="/WEB-INF/tld/struts-tiles.tld" prefix="tiles" %>
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=euc_kr" /> <title><tiles:getAsString name="title"/></title> </head> <body>
<table width="100%" border="1"> <tr> <td align="center" bgcolor="aquamarine" colspan="2"><tiles:insert attribute="header" /></td> </tr> <tr> <td align="center" bgcolor="blanchedalmond" width="120"><tiles:insert attribute="menu" /></td> <td align="center" bgcolor="chartreuse"><tiles:insert attribute="body" /></td> </tr> <tr> <td align="center" bgcolor="cornflowerblue" colspan="2"><tiles:insert attribute="footer" /></td> </tr> </table>
</body> </html>
이제 밑의 부분에 나온 각자 Layout 안의 jsp파일을 작성하면 된다.
<put name="header" value="/jsp/common/header.jsp" /> <put name="footer" value="/jsp/common/footer.jsp" /> <put name="menu" value="/jsp/basic/menu.jsp" /> <put name="body" value="/jsp/basic/helloBody.jsp" /> |