728x90
반응형
개발의 참맛 중 하나는
삽질하다가 해결됐을 때의 도파민이 아닐 까.....흑흑
아무튼 나는
- 사이트 구조의 통일성을 위해, 공통 헤더/푸터 파일이 있고, 기본 레이아웃에서 해당 헤더/푸터를 불러오도록 한 상황
- 위의 구조로 만든 레이아웃 파일이 모든 페이지에 적용되도록 web.xml과 decorators.xml 에 decorators 옵션값 세팅
<!-- web.xml -->
...
<filter>
<filter-name>sitemesh</filter-name>
<filter-class>
com.opensymphony.module.sitemesh.filter.PageFilter
</filter-class>
</filter>
<filter-mapping>
<filter-name>sitemesh</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
...
<!-- decorators.xml -->
<decorators defaultdir="/decorators">
<decorator name="mainLayout" page="mainLayout_decorator.jsp">
<pattern>/*</pattern>
</decorator>
...
</decorators>
을 했으나 url을 호출해도 decorators 파일이 적용되지 않았다.
하루정도 버리고 해결했는데 ..
@Controller
public class TestController extends BaseController{
@RequestMapping(value = "/testPage", produces = "text/html; charset=UTF-8")
public String testPage(HttpServletRequest request) {
return "test/testPage"; // --> 여기
}
}
이런식으로 return 문의 제일 앞에 "/" 를 붙여주지 않았기 때문이엇따..ㅠㅠ
return 문을 return "/test/testPage"; 로 바꿔주니 제대로 작동되었다.
끝!
+) 위의 오류와는 상관없지만, siteMesh 관련 공부 참조글
https://javacan.tistory.com/entry/131
SiteMesh를 이용한 웹 페이지 데코레이션
SiteMesh를 이용하여 웹 페이지의 레이아웃을 처리하는 방법을 살펴본다. SiteMesh의 동작 방식과 설치 웹 어플리케이션을 구성하고 있는 웹 페이지들은 대부분은 페이지 레이아웃이 동일하게 구성
javacan.tistory.com
728x90
반응형
'웹개발지식쌓기' 카테고리의 다른 글
[back] java.sql.SQLException: 부적합한 열 이름 (0) | 2024.01.25 |
---|---|
[front] JSON.stringify() 와 JSON.parse() (0) | 2024.01.11 |
Git 설치하기 : 'git'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다. (0) | 2023.12.10 |
[back] 함수가 있는데 없다고 나와요 : The method METHOD() from the type CLASS is not visible (1) | 2023.12.08 |
[back] Mybatis <association> 사용하기 - 게시글 + 게시글첨부파일 동시조회 (feat.부적합한 열) (0) | 2023.11.09 |