JAX-RS 서블릿에 대한 web.xml 파일 구성

web.xml 파일에는 모듈의 웹 컴포넌트 구조 및 외부 종속성에 관한 정보가 들어 있으며 런타임 시 컴포넌트 사용 방법을 기술합니다. 웹 컨테이너에서 JAX-RS(Java™ API for RESTful Web Services) 애플리케이션을 실행할 수 있도록 하려는 경우 IBM® JAX-RS 서블릿을 직접 가리키도록 web.xml 파일을 구성할 수 있습니다. 서블릿을 사용하는 경우 기본 URL에 추가된 web.xml 파일에서 서블릿 경로를 정의할 수 있습니다.

이 태스크 정보

JAX-RS 애플리케이션 코드를 사용할 수 있도록 웹 애플리케이션에 대한 web.xml 파일을 구성할 수 있습니다. JAX-RS 코드를 실행하는 데 사용할 IBM 특정 JAX-RS 서블릿을 지정할 수 있습니다. web.xml 파이에서는 웹 애플리케이션을 구성하는 웹 컴포넌트에 대한 구성 및 배치 정보를 제공합니다. 이 배치 디스크립터 파일에 대해 자세히 학습하려면 JAX-RS에 대한 web.xml 파일 구성을 참조하십시오.

서블릿을 사용하는 경우 web.xml에 정의된 서블릿 경로가 기본 URL에 추가됩니다. 예를 들어, 루트 자원에서 myresource의 값이 @javax.ws.rs.Path이고 서블릿 경로가 myservletpath인 경우 자원의 최종 URL은 http://<your_hostname>:<your Web_container_port>/<context_root_of_Web_application>//myservletpath/myresource입니다.

프로시저

  1. WEB-INF/web.xml 파일을 여십시오.
  2. WEB-INF/web.xml 파일에 다음 서블릿 정의를 추가하십시오. 다음 서블릿에서 unique_servlet_name을 고유한 서블릿 이름으로 바꿔야 합니다. 또한 Java_class_name 변수를 javax.ws.rs.core.Application 서브클래스의 전체 Java 패키지 및 클래스 이름으로 바꾸십시오.
    	<servlet>
         <servlet-name>unique_servlet_name</servlet-name>
         <servlet-class>com.ibm.websphere.jaxrs.server.IBMRestServlet</servlet-class>
         <init-param>
             <param-name>javax.ws.rs.Application</param-name>
             <param-value>Java_class_name </param-value>
         </init-param>
         		<load-on-startup>1</load-on-startup>
    </servlet>
  3. (선택사항) 동일한 웹 애플리케이션에 필요한 JAX-RS 애플리케이션 서브클래스가 여러 개인 경우 추가 서블릿 초기화 매개변수, requestProcessorAttributeWEB-INF/web.xml 파일에 추가하는 서블릿 정의에 포함해야 합니다. 다음 서블릿에서 unique_servlet_name을 고유한 서블릿 이름으로, Java_class_name 변수를 javax.ws.rs.core.Application 서브클래스의 전체 Java 패키지 및 클래스 이름으로, unique_identifier 변수를 고유 ID로 바꿔야 합니다.
    	<servlet>
         <servlet-name>unique_servlet_name_a</servlet-name>
         <servlet-class>com.ibm.websphere.jaxrs.server.IBMRestServlet</servlet-class>
         <init-param>
             <param-name>javax.ws.rs.Application</param-name>
             <param-value>Java_class_name_a </param-value>
         </init-param>
         <init-param>
             <param-name>requestProcessorAttribute</param-name>
             <param-value>unique_identifier_a</param-value>
         </init-param>
         		<load-on-startup>1</load-on-startup>
    	</servlet>
    	<servlet>
         <servlet-name>unique_servlet_name_b</servlet-name>
         <servlet-class>com.ibm.websphere.jaxrs.server.IBMRestServlet</servlet-class>
         <init-param>
             <param-name>javax.ws.rs.Application</param-name>
             <param-value>Java_class_name_b</param-value>
         </init-param>
         <init-param>
             <param-name>requestProcessorAttribute</param-name>
             <param-value>unique_identifier_b </param-value>
         </init-param>
         		<load-on-startup>1</load-on-startup>
    </servlet>
  4. 각 서블릿 정의에 대해 WEB-INF/web.xml 파일에서 서블릿 맵핑을 추가하십시오. 서블릿 경로가 웹 애플리케이션의 컨텍스트 루트에 추가됩니다.
    	<servlet-mapping>
         <servlet-name>servlet_name</servlet-name>
         <url-pattern>servlet_pattern_path</url-pattern>
    </servlet-mapping>
    예를 들어, servlet_pattern_path/restapi/*이면 모든 유효한 요청은 다음 URL로 시작됩니다.
    http://<your_hostname>:<your Web_container_port>/<context_root_of_Web_application>/restapi/

결과

WEB-INF/web.xml 파일을 편집한 후, 웹 애플리케이션은 JAX-RS 애플리케이션에 대해 구성됩니다.

다음 예제는 JAX-RS 애플리케이션의 서블릿 경로를 구성하는 WEB-INF/web.xml 파일을 보여줍니다. web.xml 파일에 정의된 서블릿 경로는 기본 URL에 추가됩니다.

<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_9" version="2.4" 
xmlns=http://java.sun.com/xml/ns/j2ee 
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">


	<servlet>
     <servlet-name>RestApplication1</servlet-name>
     <servlet-class>com.ibm.websphere.jaxrs.server.IBMRestServlet</servlet-class>
     <init-param>
         <param-name>javax.ws.rs.Application</param-name>
         <param-value>com.ibm.rest.sample.app1.MyApplication</param-value>
     </init-param>
     <init-param>
         <param-name>requestProcessorAttribute</param-name>
         <param-value>restApplication1ProcessorID</param-value>
     </init-param>
     		<load-on-startup>1</load-on-startup>
	</servlet>

	<servlet>
     <servlet-name>OtherRestApplicationServlet</servlet-name>
     <servlet-class>com.ibm.websphere.jaxrs.server.IBMRestServlet</servlet-class>
     <init-param>
         <param-name>javax.ws.rs.Application</param-name>
         <param-value>com.ibm.rest.other.sample.OtherApplication </param-value>
     </init-param>
     <init-param>
        <param-name>requestProcessorAttribute</param-name>
         <param-value>otherRestApplicationID </param-value>
     </init-param>
    		<load-on-startup>1</load-on-startup>
	</servlet>

	<servlet-mapping>
     <servlet-name> RestApplication1</servlet-name>
     <url-pattern>/rest/api/*</url-pattern>
	</servlet-mapping>

	<servlet-mapping>
     <servlet-name>OtherRestApplicationServlet /servlet-name>
     <url-pattern>/other/*</url-pattern>
	</servlet-mapping>
</web-app>

다음에 수행할 작업

웹 애플리케이션을 어셈블하십시오.


주제 유형을 표시하는 아이콘 태스크 주제



시간소인 아이콘 마지막 업데이트 날짜: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twbs_jaxrs_configwebxml
파일 이름:twbs_jaxrs_configwebxml.html