web.xml example
이것도 역시 퍼온거.. 내일 읽어봐야지..
=========================================
출처 : 용이 님의 블로그
http://blog.naver.com/igilyong/140014772951
[Tomcat] web.xml에 대한 예제..
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> <web-app> <!-- 웹 어플리케이션의 일반적 설명 --> <display-name>My Web Application</display-name> <description> 이것은 와일드하고 훌륭한 작업을 수행하는 servlet과 JSP 기반한 애플리케이션의 X.X 버전입니다. 이 문서는 개발자 Dave 가 작성했고, 더 자세한 정보를 원하시면 dave@mycompany.com 으로 연락할 수 있습니다. </description> <!-- Context 초기 파라메터: 어플리케이션에서 사용되는 공유 된 문자열 상수들을 선언합니다. 이것은 애플리케이션을 설치하는 시스템 관리자가 변경할 수 있습니다. 이들 파 라메터에 실질적으로 할당된 값들은 servlet 과 JSP page 에서 다음과 같이 불러올 수 있습니다: String value = getServletContext().getInitParameter("name"); 여기서 "name" 은 <param-name> 이들 초기 파라메터 중에 하나의 엘리먼트와 같습니다. 컨텍스트 초기 파라메터의 갯수는 제한이 없고, 아무것도 없어도 됩니다. --> <context-param> <param-name>webmaster</param-name> <param-value>myaddress@mycompany.com</param-value> <description> The EMAIL address of the administrator to whom questions and comments about this application should be addressed. </description> </context-param> <!-- 초기 파라메터를 포함해, 웹 애플리케이션을 구성하는 servlet 에 대한 정의. Tomcat 에서, 브라우저에서 servlet 요청시 아래와 같이 함으로 web.xml 파일에 등록안된 것도 부를 수 있습니다: http://localhost:8080/{context-path}/servlet/{classname} 그러나 이런 사용법은 유동성을 보장하지 못합니다. 또한 servlet이 이미지나 다른 자원에 접근하기 위해서는 상대 경로 를 지정해야 되는 등 servlet이 매우 복잡하게 됩니다. 그래서 모든 servlet 을 정의해 주는 것을 (그리고 servlet-매핑 요소 로 정의하는 것) 권장합니다. Servlet 초기 파라메터는 servlet 과 JSP page 에서 다음과 같 이 불러올 수 있습니다: String value = getServletConfig().getInitParameter("name"); 여기서 "name" 은 <param-name> 이들 초기 파라메터 중에 하나의 엘리먼트와 같습니다. servlet 갯수는 제한이 없고, 아무것도 없어도 됩니다. --> <servlet> <servlet-name>controller</servlet-name> <description> 이 어플리케이션에 사용된 MVC 구조에서 이 servlet은 "controller" 역할을 합니다. 보통 <servlet-mapping> 엘리먼트와 함께 ".do" 파일 확장자로 매핑됩니다. 그리고 이 애플리케이션에서 사용되는 모든 form은 요청하는 주소가 "saveCustomer.do" 처럼 지정됩니다. 이 servlet에 매핑된 servlet입니다. 이 servlet에 대한 초기 파라메터 명은 (파일 확장자가 제거된 후에) 이 servlet 이 받는 "servlet path" 입니다. 상응하는 값은 이 요청을 처리하는 데 사용할 action class 의 이름입니다. </description> <servlet-class>com.mycompany.mypackage.ControllerServlet</servlet-class> <init-param> <param-name>listOrders</param-name> <param-value>com.mycompany.myactions.ListOrdersAction</param-value> </init-param> <init-param> <param-name>saveCustomer</param-name> <param-value>com.mycompany.myactions.SaveCustomerAction</param-value> </init-param> <!-- 시동할 때 이 servlet을 서버에 로딩한다 --> <load-on-startup>5</load-on-startup> </servlet> <servlet> <servlet-name>graph</servlet-name> <description> 이 servlet 은 동적으로 생성된 그래프 GIF 이미지를 생성합니다. 이 요청에 포함된 입력된 파라메터값을 갖고 생성합니다. 보통 "/graph" 라는 구별된 URI 요청에 매핑되어 있습니다. </description> </servlet> <!-- 특정한 요청 URI (context-상대적인)를 특정한 servlet으로 해석 하는 servlet 컨테이너에 의해 사용되는 매핑을 선언하기. 아래 예제는 위에 있는 servlet 설명과 관계있습니다. 그러므로, 요청 URI 는 다음과 같습니다: http://localhost:8080/{contextpath}/graph 주소는 "graph" servlet 에 매핑됩니다. 한편: http://localhost:8080/{contextpath}/saveCustomer.do 은 "controller" servlet 에 매핑됩니다. servlet 매핑의 갯수는 제한이 없고, 아무것도 없어도 됩니다. 원한다면 하나의 servlet 에 한 개 이상의 매핑을 해주어도 됩니다. --> <servlet-mapping> <servlet-name>controller</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>graph</servlet-name> <url-pattern>/graph</url-pattern> </servlet-mapping> <!-- 어플리케이션의 기본 세션 타임아웃 시간을 분단위로 설정합 니다. servlet 이나 JSP page 에서, 동적으로 특정한 session 에 대해 시간을 조정할 수 있습니다. HttpSession.getMaxInactiveInterval() 을 사용하면 됩니다. --> <session-config> <session-timeout>30</session-timeout> <!-- 30 minutes --> </session-config> </web-app> |
<error-page>
<error-code>
500
</error-code>
<location>
/errorPage.jsp
</location>
</error-page>
<error-page>
<exception-type>
javax.servlet.ServletException
</exception-type>
<location>
/servlet/ErrorDisplay
</location>
</error-page>