SSISO Community

시소당

SiteMesh를 이용한 웹 페이지 처리

SiteMesh의 동작 원리는 Decorator Pattern을 적용하여 전체 HTML 페이지에 레이아웃을 삽입하는 형태입니다. 그래서 공통 메뉴를 사용하는 사이트에 많이 적용하게 됩니다.
헤더, 푸터, 왼쪽 메뉴, 오른쪽 메뉴등의 공통적으로 사용되는 메뉴들을 title이나 body 태그를 추출하여 알맞은 위치에 레이아웃을 적용하게 되어 사용자를 위해 웹 페이지를 완성하여 보여주게 됩니다.

1. 설치

 - 다운로드 사이트에서 파일을 받아서 WEB-INF/lib에 카피

2. 설정
 - WEB-INF디렉토리에 decorators.xml, sitemesh-decorator.tld, sitemesh-page.tld, sitemesh.xml 추가함
 - web.xml에 추가

 - decorators.xml 작성 : name, page 형태로 추가됨

 - $DOCUMENTROOT/decorators디렉토리 안에 데코레이터 페이지 작성(공통 페이지용)
  <decorator:title default="XXXXXXX" /></title> : <title> 태그에 명시된 타이틀을 삽입
  <decorator:head /> : HTML의 <head> 태그의 내용을 삽입
  <decorator:body/> : <body> 태그의 내용을 삽입
  프로퍼티의 값을 데코레이터 JSP에 삽입하고 싶다면  <decorator:getProperty> 커스텀 태그를 사용
 - 데코레이션 될 JSP 코드 작성(추가 기능 콘텐츠들)

이렇게 설정하면 iframe등의 사용없이 공통 페이지를 데코레이터해서 콘텐츠를 복잡함없이 쉽게 추가할 수 있습니다. 아마 SiteMesh는 관리자 화면 등에 유용하게 사용될 것입니다.
저도 몇년전부터 그렇게 사용하고 있습니다.

2343 view

4.0 stars