tiles관련하여 질문합니다...
- 작성자 :
- 최*용
- 작성일 :
- 2011-04-15 17:09:07
- 조회수 :
- 3,148
- 구분 :
- 공통컴포넌트
- 진행상태 :
- 완료
Q
안녕하세요? 작업도중 궁금한 점이 생겨서 글을 남깁니다.
다름이 아니라.. tiles를 적용하였습니다.
그런데 공통컴포넌트의 메뉴관리-생성기능을 가져오려고 했는데..
action을 태우기 위해서 import를 시키니 매번 호출하여 에러가 발생합니다..
1. tiles 설정 시 action을 태울 수 있는 방법이 있나요?
2. 현재 전자정부프레임웍 사용한 사이트들 tiles방법을 사용햇나요?ㅜ.ㅜ
3. 메뉴부분은 현재 소스가 없나요??
답변 바랍니다.. 아래는 소스 추가합니다..
servlet
<bean id="tilesViewResolver" class="org.springbyexample.web.servlet.view.tiles2.TilesUrlBasedViewResolver">
<property name="viewClass" value="org.springbyexample.web.servlet.view.tiles2.DynamicTilesView" />
<property name="prefix" value="/WEB-INF/jsp/egovframework/"/>
<property name="suffix" value=".jsp"/>
<property name="tilesDefinitionName" value="default" />
<property name="tilesBodyAttributeName" value="body" />
<property name="tilesDefinitionDelimiter" value="." />
<property name="order" value="2" />
</bean>
tiles-def.xml
<definition name=".default" template="/WEB-INF/jsp/egovframework/tmpl/layout.jsp">
<put-attribute name="title" value="서비스모드" />
<put-attribute name="top" value="/WEB-INF/jsp/egovframework/tmpl/top.jsp" />
<put-attribute name="left" value="/WEB-INF/jsp/egovframework/tmpl/left.jsp" />
<put-attribute name="right" value="/WEB-INF/jsp/egovframework/tmpl/right.jsp" />
<put-attribute name="bottom" value="/WEB-INF/jsp/egovframework/tmpl/bottom.jsp" />
<put-attribute name="body" value="/WEB-INF/jsp/egovframework/tmpl/body.jsp" />
</definition>
layout.jsp
<div id="top"><c:import url="/sym/mms/EgovMainMenuHead.do"></c:import></div>
<div id="left"><tiles:insertAttribute name="left"/></div>
<div id="content"><tiles:insertAttribute name="body"/></div>
<div id="bottom"><tiles:insertAttribute name="bottom"/></div>
다름이 아니라.. tiles를 적용하였습니다.
그런데 공통컴포넌트의 메뉴관리-생성기능을 가져오려고 했는데..
action을 태우기 위해서 import를 시키니 매번 호출하여 에러가 발생합니다..
1. tiles 설정 시 action을 태울 수 있는 방법이 있나요?
2. 현재 전자정부프레임웍 사용한 사이트들 tiles방법을 사용햇나요?ㅜ.ㅜ
3. 메뉴부분은 현재 소스가 없나요??
답변 바랍니다.. 아래는 소스 추가합니다..
servlet
<bean id="tilesViewResolver" class="org.springbyexample.web.servlet.view.tiles2.TilesUrlBasedViewResolver">
<property name="viewClass" value="org.springbyexample.web.servlet.view.tiles2.DynamicTilesView" />
<property name="prefix" value="/WEB-INF/jsp/egovframework/"/>
<property name="suffix" value=".jsp"/>
<property name="tilesDefinitionName" value="default" />
<property name="tilesBodyAttributeName" value="body" />
<property name="tilesDefinitionDelimiter" value="." />
<property name="order" value="2" />
</bean>
tiles-def.xml
<definition name=".default" template="/WEB-INF/jsp/egovframework/tmpl/layout.jsp">
<put-attribute name="title" value="서비스모드" />
<put-attribute name="top" value="/WEB-INF/jsp/egovframework/tmpl/top.jsp" />
<put-attribute name="left" value="/WEB-INF/jsp/egovframework/tmpl/left.jsp" />
<put-attribute name="right" value="/WEB-INF/jsp/egovframework/tmpl/right.jsp" />
<put-attribute name="bottom" value="/WEB-INF/jsp/egovframework/tmpl/bottom.jsp" />
<put-attribute name="body" value="/WEB-INF/jsp/egovframework/tmpl/body.jsp" />
</definition>
layout.jsp
<div id="top"><c:import url="/sym/mms/EgovMainMenuHead.do"></c:import></div>
<div id="left"><tiles:insertAttribute name="left"/></div>
<div id="content"><tiles:insertAttribute name="body"/></div>
<div id="bottom"><tiles:insertAttribute name="bottom"/></div>
A
안녕하세요.. 최진용님..
우선.. 전자정부 표준프레임워크는 view에 대한 다양한 구현이 가능합니다.
tiles도 적용 가능하십니다.
다만, 적용하신 것 처럼.. layout 페이지에 c:import 같은 것은 사용이 불가능할 것 같습니다.
이 경우 원하시는 목적에 맞는 tiles의 View Preparer를 사용하시면 됩니다.
참조 : http://tiles.apache.org/framework/tutorial/advanced/preparer.html
개념적으로는 tiles의 definition을 호출할 때에 지정된 모든 jsp에서 해당 모델을 공유합니다. 이 경우.. 하나의 action(controller)에서 put-attribute로 지정된 jsp에 필요한 모든 정보(model)을 넘겨 주시면 됩니다.
단, 매번 동일한 처리를 해야 하기 때문에 view preparer를 사용하시면 공통화 하실 수 있습니다.
Spring MVC에서의 view preparer 활용은 인터넷 등을 통해 확인해 보시면 될 것 같습니다.
또는 layout.jsp가 아닌..
head.jsp, left.jsp 등에서는 <c:import/>를 사용하실 수 있을 것으로 판단됩니다.
그럼.. 즐거운 하루되십시오.
감사합니다.
우선.. 전자정부 표준프레임워크는 view에 대한 다양한 구현이 가능합니다.
tiles도 적용 가능하십니다.
다만, 적용하신 것 처럼.. layout 페이지에 c:import 같은 것은 사용이 불가능할 것 같습니다.
이 경우 원하시는 목적에 맞는 tiles의 View Preparer를 사용하시면 됩니다.
참조 : http://tiles.apache.org/framework/tutorial/advanced/preparer.html
개념적으로는 tiles의 definition을 호출할 때에 지정된 모든 jsp에서 해당 모델을 공유합니다. 이 경우.. 하나의 action(controller)에서 put-attribute로 지정된 jsp에 필요한 모든 정보(model)을 넘겨 주시면 됩니다.
단, 매번 동일한 처리를 해야 하기 때문에 view preparer를 사용하시면 공통화 하실 수 있습니다.
Spring MVC에서의 view preparer 활용은 인터넷 등을 통해 확인해 보시면 될 것 같습니다.
또는 layout.jsp가 아닌..
head.jsp, left.jsp 등에서는 <c:import/>를 사용하실 수 있을 것으로 판단됩니다.
그럼.. 즐거운 하루되십시오.
감사합니다.