반응형
한 줄 요약
- conf/web.xml 은 default이고 WEB-INF/web.xml 은 재정의(Override) 한다.
파일 설명
context.xml (web.xml 파일을 설정 하는 상위 파일)
- 톰캣에 있는 파일로 web application의 자원을 명시 해주는 파일이다.
- 톰캣 서버가 실행되면 해당 파일의 WatchedResource 태그에 명시된 경로에 따라 web.xml의 코드를 읽는다.(tomcat web.xml ,project web.xml 둘 다 읽음)
<WatchedResource>WEB-INF/web.xml</WatchedResource>
<WatchedResource>WEB-INF/tomcat-web.xml</WatchedResource>
<WatchedResource>${catalina.base}/conf/web.xml</WatchedResource>
conf/web.xml (Tomcat 폴더에서 파일 정의)
- 톰캣에 있는 모든 web application의 기본설정을 정의한다.
- 톰캣의 실행환경 정보가 있는 '환경설정' 파일
- 각종 servlet 설정, servlet매핑, 필터, 인코딩 등을 담당
▼ conf/web.xml 파일 구성 확인하기 ▼
더보기
구성
ServletContext의 초기 파라미터
DefaultServlet : 공유자원을 제공하며 servlet mapping을 가진 모든 요청을 처리한다.
<servlet>
<servlet-name>default</servlet-name>
<servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
...
</servlet>
Servlet/JSP에 대한 정의
JspServlet : JSP의 컴파일과 실행을 담당하는 servlet
<servlet>
<servlet-name>jsp</servlet-name>
<servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
...
</servlet>
Servlet/JSP 매핑
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>jsp</servlet-name>
<url-pattern>*.jsp</url-pattern>
</servlet-mapping>
Session의 유효시간 설정
<session-config>
<session-timeout>30</session-timeout>
</session-config>
Mime Type 매핑
<mime-mapping>
<extension>123</extension>
<mime-type>application/vnd.lotus-1-2-3</mime-type>
</mime-mapping>
Welcome File list
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
WEB-INF/web.xml(프로젝트 폴더에서 파일 정의)
- 추후 웹애플리케이션을 추가 할 때 필요한 부분만 재정의 또는 추가 정의 하는 부분이 WEB-INF/web.xml
- web application이 deploy될 때 web application의 'WEB-INF/web.xml' deployment descripter에 따라서 처리
- 각 web application 설정시, web.xml은 파일을 복사해서 필요한 것만 적으면 된다.
▼ WEB-INF/web.xml 파일 구성 확인하기 ▼
더보기
구성
Servlet/JSP에 대한 정의
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>
org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<init-param>
<param-name>contextConfig</param-name>
<param-value>
/WEB-INF/config/
</param-value>
</init-param>
</servlet>
Servlet/JSP 매핑
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
Session의 유효시간 설정
<session-config>
<session-timeout>30</session-timeout>
</session-config>
Welcome File list
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
JDBC 연결을 위한 정보
<resource-ref>
<description>OracleDatasource</description>
<res-ref-name>jdbc/oracle</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
filter에대한 정의 (HTMLTagFilter)
<filter>
<filter-name>HTMLTagFilter</filter-name>
<filter-class>egovframework.rfc3.common.filter.HTMLTagFilter</filter-class>
</filter>
filter 매핑 (HTMLTagFilter)
<filter-mapping>
<filter-name>HTMLTagFilter</filter-name>
<url-pattern>*.do</url-pattern>
</filter-mapping>
존재하지 않는 페이지, 400 에러시 처리 페이지 설정
<error-page>
<error-code>400</error-code>
<location>/WEB-INF/jsp/400error.jsp</location>
</error-page>
Reference
반응형
'WEB > Server' 카테고리의 다른 글
[Server] 프로토콜이란? (0) | 2024.03.27 |
---|---|
[Apache]Apache Log4j 2.17 version (0) | 2021.12.23 |