Tomcat 6.0에서 Servlet 실행을 위한 web.xml 수정
Posted In:
Tips
.
By lkh
□ 톰캣의 환경설정 파일
◇ %TOMCAT_HOME%\conf\web.xml
web.xml 파일에서 서블릿을 실행할 수 있도록 서블릿의 접근 방법을 지정해 줌으로써 서블릿 서비스를 제공할 수 있다.
web.xml 파일에서 서블릿을 실행할 수 있도록 서블릿의 접근 방법을 지정해 줌으로써 서블릿 서비스를 제공할 수 있다.
다음의 위치에 설정되어 있는 주석을 해제하면 된다.
□ XML 문서의 주석문 기호
◇ 주석문의 시작 : <!--
◇ 주석문의 끝 : -->
□ web.xml 파일의 수정
web.xml파일을 메모장으로 열어서 ctrl + f (찾기)로 invoker를 키워드로 찾으면(아마 두번 째) 다음과 같이 주석 코드를 제거 합니다.
<servlet>
<servlet-name>invoker</servlet-name>
<servlet-class>
org.apache.catalina.servlets.InvokerServlet
</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<load-on-startup>2</load-on-startup>
</servlet>
<servlet-name>invoker</servlet-name>
<servlet-class>
org.apache.catalina.servlets.InvokerServlet
</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<load-on-startup>2</load-on-startup>
</servlet>
또 ctrl + f (찾기)로 invoker를 키워드로 찾아서 역시 주석문 제거..
<servlet-mapping>
<servlet-name>invoker</servlet-name>
<url-pattern>/servlet/*</url-pattern>
</servlet-mapping>
<servlet-name>invoker</servlet-name>
<url-pattern>/servlet/*</url-pattern>
</servlet-mapping>
위의 위치에 설정되어 있는 주석 기호를 삭제하면 서블릿을 실행할 수 있습니다.
그런데 Tomcat 6.0에서는 위와 같이 주석을 풀고 실행해도 Tomcat 시작시 Exception이 발생한다.
그래서 다음과 같이 설정을 해 주어야 한다.
Tomcat 설치 디렉터리의 conf/context.xml 파일을 열고,<Context> 태그를 다음과 같이 수정한다.
<Context reloadable="true" privileged="true">
그러면 Tomcat 시작 시 에러가 발생하지 않으며, 서블릿도 정상적으로 실행된다.
Tomcat 설치 디렉터리의 conf/context.xml 파일을 열고,<Context> 태그를 다음과 같이 수정한다.
<Context reloadable="true" privileged="true">
그러면 Tomcat 시작 시 에러가 발생하지 않으며, 서블릿도 정상적으로 실행된다.
어쩐지 서블릿/JSP 책에서 톰캣 5.5 버전을 사용하고, 난 톰캣6.0 버전이었는데 아무리 책의 예제대로 따라해도 서블릿이 실행 되지를 않아서 많이 당황을 했는데.. JAVA에 Tomcat에 Eclipse 까지 엉켜있어서.. 무엇이 문제 인지 쉽게 찾을 수가 없었다.. ㅡ.ㅡ;
처음엔 Eclipse 문제인 줄 알고 이클립스 설정 문제 쪽을 뒤졌는데 해결이 되지않아서 씨름을 하다가..
톰캣6.0에서는 web.xml에서 서블릿 관련 주석문을 해제해주고, context.xml 도 변경해 주어야 문제가 해결 된다..
1 Response to Tomcat 6.0에서 Servlet 실행을 위한 web.xml 수정
Wow Thanks for your help! :)
Something to say?