IBM JAX-RS 시작하기

JAX-RS는 서비스 측 REST 애플리케이션 개발을 단순화하는 인터페이스 및 Java™ 어노테이션의 콜렉션입니다. JAX-RS 기술을 사용하면 REST(Representational State Transfer) 애플리케이션을 개발하기가 쉬워지고 다른 유형의 분배 시스템에 비해 이용이 쉬워집니다.

이 태스크 정보

JAX-RS는 REST 애플리케이션을 빠르게 개발하기 위한 Java API입니다. JAX-RS에서 서블릿 이외의 웹 애플리케이션을 개발하는 빠른 방법을 제공하지만, JAX-RS의 1차 목표는 RESTful 서비스를 빌드하는 것입니다. JAX-RS 1.0은 REST 애플리케이션을 빌드하도록 서버 측 컴포넌트 API를 정의합니다. JAX-RS의 IBM® 구현은 JAX-RS(JSR 311) 스펙의 구현을 제공합니다.

이 시작하기 안내서를 사용하면 단순 JAX-RS 웹 애플리케이션을 빠르게 개발하고 배치하는 데 유용합니다.

이 프로시저는 웹 애플리케이션 아카이브(WAR) 모듈 내부에 패키지화되는 단순 Hello World 서비스 개발을 보여줍니다.

프로시저

  1. Java 클래스를 작성하십시오. 이 클래스는 자원 유형을 표시하는 데 사용됩니다.
    package com.ibm.jaxrs.sample;
    
    public class HelloWorldResource {
    
    }
  2. javax.ws.rs.Path 어노테이션을 사용하여 Java 클래스에 대한 어노테이션을 작성하십시오. 어노테이션 값은 애플리케이션 컨텍스트 뒤에 있는 URL의 상대 파트입니다. 애플리케이션 컨텍스트는 배치 중에 완전히 정의됩니다. JAX-RS 용어로 이 클래스를 루트 자원이라고 합니다.
    package com.ibm.jaxrs.sample;
    
    @javax.ws.rs.Path("/helloworld")
    public class HelloWorldResource {
    
    }
  3. Hello World! 응답을 리턴하는 Java 메소드를 작성하십시오. 이 메소드는 HTTP 요청이 수신될 때 메소드가 호출되도록 하는 것을 목적으로 합니다.
    package com.ibm.jaxrs.sample;
    
    @javax.ws.rs.Path("/helloworld")
    public class HelloWorldResource {
    
        public String sayHelloWorld() {
            return "Hello World!";
        }
    }
  4. javax.ws.rs.GET 어노테이션을 Java 메소드에 추가하십시오.
    이제 애플리케이션이 /helloworld 경로로 HTTP GET 요청을 수신할 때마다 sayHelloWorld Java 메소드가 호출됩니다. 응답 메시지 본문에 Hello World!가 컨텐츠로 포함됩니다.
    package com.ibm.jaxrs.sample;
    
    @javax.ws.rs.Path("/helloworld")
    public class HelloWorldResource {
    
        @javax.ws.rs.GET
        public String sayHelloWorld() {
            return "Hello World!";
        }
    }
    자원 구현이 완료되었습니다.
  5. JAX-RS javax.ws.rs.core.Application 구성 서브클래스를 작성해야 합니다. 이 서브클래스는 JAX-RS 런타임 환경과 관련된 Java 클래스 세트를 리턴해야 합니다.
    package com.ibm.jaxrs.sample;
    
    public class HelloWorldAppConfig extends javax.ws.rs.core.Application {
        public Set<Class<?>> getClasses() {
            Set<Class<?>> classes = new HashSet<Class<?>>();
            classes.add(com.ibm.jaxrs.sample.HelloWorldResource.class);
            return classes;
        }
    }
  6. web.xml 웹 모듈 구성 파일을 작성하십시오.
    이 파일은 웹 모듈에 IBM JAX-RS REST 서블릿이 포함되어 있음을 웹 컨테이너에 알립니다. 애플리케이션 구성 클래스를 사용하여 IBM JAX-RS Rest 서블릿을 초기화해야 합니다.
    <?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>HelloWorldApp</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.jaxrs.sample.HelloWorldAppConfig</param-value>
            </init-param>
            		<load-on-startup>1</load-on-startup>
        	</servlet>
        	<servlet-mapping>
            <servlet-name>HelloWorldApp</servlet-name>
            <url-pattern>/rest/*</url-pattern>
        	</servlet-mapping>
    </web-app>
    이전 예에서 지정된 서블릿 맵핑을 참조하십시오. 패턴은 RESTful 서비스의 최종 URL 판별을 돕기 위해 사용됩니다.
  7. j2ee.jar 파일을 클래스 경로에 추가하십시오.

    app_server_root/dev/JavaEE 디렉토리에서 j2ee.jar 파일을 가져오고 이 JAR 파일을 클래스 경로에 추가하십시오. 클래스를 컴파일하십시오.

  8. 웹 애플리케이션을 어셈블하십시오.
    JDK에 포함된 jar 명령행 도구를 사용하여 다음 명령을 실행하십시오.
    jar cvf helloworld-jaxrs.war *
    이 명령은 WAR 파일을 작성합니다.
  9. Application Server에 애플리케이션을 배치하십시오.

    애플리케이션 배치 시 모듈의 컨텍스트 루트 값을 제공하도록 프롬프트가 표시될 수 있습니다. 컨텍스트 루트는 애플리케이션 컨텍스트를 정의하는 데 사용됩니다.

    IBM JAX-RS 서블릿 사용 시 다음 URL은 애플리케이션 컨텍스트를 정의합니다.
    http://<your_hostname>:<your Web_container_port>/<context_root_of_Web_application>/servlet_mapping_pattern
    @javax.ws.rs.Path 값이 지정하는 루트 자원 URL은 애플리케이션 컨텍스트 루트에 상대적입니다. 따라서 배치 중 컨텍스트 루트가 myapplication으로 정의되는 경우 web.xml 파일에서 URL 패턴이 /rest/*로 정의되고 Java 루트 자원 클래스의 @javax.ws.rs.Path 값은 /helloworld입니다. 최종 URL의 예는 다음과 같습니다.
    http://localhost:9080/myapplication/rest/helloworld

    이제 웹 브라우저 또는 다른 HTTP 클라이언트를 사용하여 최종 URL에 클라이언트 요청을 전송할 수 있습니다.

결과

애플리케이션 서버에 JAX-RS 웹 애플리케이션을 개발 및 배치했습니다.


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



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