워크벤치가 웹 서비스를 위해 빌드하는 WAR 파일에서 사용하는
web.xml 파일을 사용자 정의할 수 있습니다. 이러한 필터가
서비스와 함께 전개되도록 하려면 웹 서비스로 들어오는 요청을 위해
일부 필터를 추가하여 web.xml을 변경할 수 있습니다. 또한 추가
servlet 또는 servlet 맵핑 태그를 추가할 수도 있습니다.
이 태스크 정보
web.xml 파일이 웹 서비스의 프로젝트에 있더라도 web.xml
파일을 직접 편집하지 않습니다. 대신, 워크벤치가 다시 WAR 파일을
생성하면 워크벤치에서 web.xml 파일에 포함하려는 변경사항이 포함된
템플리트를 작성합니다.
빌드 및 전개 마법사를
사용하여 WAR 파일을 생성하면 워크벤치가 프로젝트에서 모든 파일을
삭제하고 이를 다시 작성합니다. 따라서 web.xml 파일을 직접 편집하는
경우, 빌드 및 전개 마법사를 사용하면 변경사항을
잃게 됩니다.
web.xml 파일에 대한 편집 내용을 포함하는
템플리트를 사용하면 워크벤치가 템플리트의 컨텐츠와 작성한 web.xml
파일 컨텐츠를 병합합니다.
프로시저
web.xml 파일을 사용자 정의하려면
다음을 수행하십시오.
- 네비게이터 보기가 열려 있지 않은 경우,
이를 여십시오.
- 를 선택하십시오.
- 뷰 표시 창에서 를 선택하십시오.
- 프로젝트의 .metadata 폴더를 마우스 오른쪽 단추로 누르고
를 선택하십시오.
새로 작성 마법사에서, 일반을 펼치고
폴더를 선택하십시오. 다음을 누르십시오.
새 폴더 페이지에 템플리트를 이름으로 입력하십시오. 완료를 누르십시오.
- 템플리트 폴더를 마우스 오른쪽 단추로 누르고 새로 작성 > 기타를 선택하십시오.
새로 작성 마법사에서, 일반을 펼치고
폴더를 선택하십시오. 다음을 누르십시오. 새 폴더 페이지에서
j2ee를 이름으로 입력하십시오. 완료를 누르십시오.
- j2ee 폴더를 마우스 오른쪽 단추로 누르고 를 선택하십시오.
새로 작성 마법사에서, 일반을 펼치고
파일을 선택하십시오. 다음을 누르십시오. 새 파일 페이지에서
web_template.xml을 이름으로 입력하십시오. 완료를 누르십시오.
- 새 파일의 편집기에서 소스 탭을 선택하십시오. 다음 태그를
편집기에 복사 및 붙여넣기 하십시오.
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
version="2.5">
</web-app>
- 워크벤치를 사용하여 웹 서비스를 위해 WAR 파일에 맞게 생성한 web.xml
파일로 통합할 컨텐츠를 추가하십시오. Java Servlet 2.5 스펙의 스키마가 정의하는 태그에 컨텐츠를
추가할 수 있습니다.
다음은 예제 템플리트입니다.
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5">
<filter>
<filter-name>DebugFilter-In</filter-name>
<description>Print XMl request, XML response and current timestamps</description>
<filter-class>com.vzb.varwebservices.filter.DebugFilter</filter-class>
<init-param>
<param-name>input</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<servlet>
<servlet-name>testServlet1</servlet-name>
<servlet-class>com.ibm.datatools.dsws.rt.testclient.testServlet1</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>testServlet1</servlet-name>
<url-pattern>/TestClient/testServlet1</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>testServlet2</servlet-name>
<servlet-class>com.ibm.datatools.dsws.rt.testclient.testServlet2</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>testServlet2</servlet-name>
<url-pattern>/TestClient/testServlet2</url-pattern>
</servlet-mapping>
</web-app>
- 템플리트를 저장하십시오. 프로젝트를 빌드한 다음,
워크벤치를 사용하여 템플리트 파일의 컨텐츠를 새로 생성된 WAR 파일에
들어갈 web.xml 파일로 삽입합니다.