< 이전 | 다음 >

학습 3: 웹 서비스 클라이언트 작성

이 학습에서는 웹 서비스용 클라이언트를 작성하는 방법을 학습합니다.

시작하기 전에 먼저 학습 2: 웹 서비스 작성을 완료해야 합니다.
웹 서비스가 배치되는 위치 및 이 서비스에서 제공하는 조작에 대해 설명하는 WSDL 문서에서 웹 서비스 클라이언트를 작성합니다. 웹 서비스 마법사에서 생성되는 정적 WSDL 파일을 사용하거나, JAX-WS 웹 서비스 작성 시 Java 클래스에 추가되는 어노테이션에서 수집하는 정보를 기반으로 런타임에서 생성되는 동적 WSDL 파일을 사용할 수 있습니다. 이 학습서에서는 동적 WSDL 파일을 사용합니다.

동적으로 생성된 WSDL 보기

서버가 시작되면, 어노테이션이 있는 Bean을 신속하게 테스트하여 웹 서비스인지 여부를 확인하고 동적 WSDL 파일을 생성할 수 있어야 합니다.
  1. 웹 서비스에서 사용 중인 포트를 아직 모르는 경우, 이 포트를 판별하십시오. 포트를 판별하려면 다음을 수행하십시오.
    1. 서버 보기에서 사용자의 서버를 마우스 오른쪽 단추로 클릭하고 관리 > 관리 콘솔 실행을 선택하여 WebSphere Application Server 관리 콘솔을 실행하십시오.
    2. 서버 > 서버 유형을 펼치고 WebSphere Application Server를 선택하십시오.
    3. 목록에서 서버 이름을 선택하십시오. 기본적으로 서버 이름은 server1입니다.
    4. 구성 탭에서 통신 표제를 검색하고 포트를 펼치십시오.
    5. 사용되는 포트는 WC_defaulthost입니다. 이 학습서에서는 예제 포트 번호 9081을 사용합니다. 이후 단계 중 아무 단계에서나 이 번호를 사용자의 포트 번호로 바꾸십시오.
  2. 아이콘기본 도구 모음에 표시되는 웹 브라우저 아이콘을 클릭하여 웹 브라우저를 실행하십시오.
  3. 브라우저에 URL http://localhost:9081/jwsAddressBook/AddressBookService를 입력하고 돌아가기를 누르십시오. 해당 항목이 웹 서비스임을 나타내는 페이지가 표시됩니다.
  4. 3단계에서 URL의 끝에 다음과 같이 ?wsdl을 추가하고 돌아가기를 다시 누르십시오. http://localhost:9081/jwsAddressBook/AddressBookService?wsdl. 동적으로 생성된 WSDL 파일이 표시됩니다. 서버가 실행 중인 동안에는 웹 서비스 마법사가 생성한 정적 WSDL 파일을 사용하는 것과 동일한 방법으로 이 파일을 사용할 수 있습니다.

주소록 웹 서비스 클라이언트 작성 및 JSP 테스트

  1. 파일 >새로 작성>기타를 클릭하십시오. 다양한 웹 서비스 마법사를 표시하려면 웹 서비스를 선택하십시오. 웹 서비스 클라이언트 마법사를 선택하십시오. 다음을 클릭하십시오.
  2. 웹 서비스 페이지: 다음과 같은 이전 절에서 발견한 동적으로 생성된 WSDL 파일의 URL을 서비스 정의 필드에 입력하십시오: http://localhost:9081/jwsAddressBook/AddressBookService?wsdl.
    1. 슬라이더를 사용하여 완료할 웹 서비스 클라이언트 개발 단계를 선택하십시오. 이 학습서에서는 클라이언트 테스트를 선택하십시오. 이 단계를 선택하면 모든 필수 클라이언트 코드가 생성되며 클라이언트에 대해 다양한 테스트 옵션을 제공합니다.
    2. 서버: WebSphere v7.0 이상 서버가 선택되었는지 확인하십시오.
    3. 웹 서비스 런타임: JAX-WS 런타임이 선택되었는지 확인하십시오.
    4. 클라이언트 프로젝트: 학습 1에서 작성한 다음과 같은 클라이언트 프로젝트를 선택하십시오: jwsAddressBookClient.
    5. 클라이언트 EAR 프로젝트: jwsAddressBookEAR을 선택하십시오. JAX-WS 웹 서비스의 경우, 서버와 클라이언트 프로젝트가 동일한 EAR을 공유할 수 있습니다.
    6. 웹 서비스 모니터: 이 단계에서는 웹 서비스에서 생성된 SOAP 트래픽을 관찰하고 WS-I 준수를 확인하기 위해 이 트래픽을 테스트할 수 있는 TCP/IP 모니터를 통해 웹 서비스 트래픽을 송신합니다. TCP/IP 모니터는 RSP 정책 세트를 사용하여 보안 설정한 웹 서비스를 모니터할 수 없으므로 이 옵션을 선택하지 마십시오.
    다음을 클릭하십시오.
  3. WebSphere JAX-WS 웹 서비스 클라이언트 구성 페이지:
    • 출력 폴더: 클라이언트의 Java 클래스를 생성할 기본 폴더를 채택하십시오.
    • 대상 패키지: 웹 서비스 클라이언트 마법사는 지정된 WSDL에서 여러 개의 Java 파일을 생성합니다. 기본적으로 WSDL 파일에서 지정된 네임스페이스에 따라 패키지 이름을 작성합니다. 이 기본 동작을 대체하려면 WSDL 파일의 네임스페이스에 사용자 고유의 패키지 이름을 지정할 수 있습니다. 이 학습서에서는 기본값을 채택하십시오.
    • 이식 가능 클라이언트 생성: 이 선택란을 선택하면 한 시스템에서 다른 시스템으로 또는 WebSphere Application Server의 한 인스턴스에서 다른 인스턴스로 웹 서비스 클라이언트 코드를 이동할 수 있습니다. 이 학습서에서는 필요 없습니다.
    • 생성된 클라이언트에 대해 비동기 호출 사용: 비동기 클라이언트를 사용 가능하게 선택한 경우, 웹 서비스의 각 메소드에 대해 두 개의 추가 메소드가 작성됩니다. 이 메소드는 클라이언트가 비동기로 기능할 수 있도록 하는 폴링 및 콜백 메소드입니다. 이 옵션을 선택하십시오.
    • JAX-WS 또는 JAXB 바인딩 파일 지정: JAX-WS 또는 JAXB 사용자 정의 바인딩 파일을 작성하는 경우에 이 웹 서비스를 작성하도록 사용하려면 이 선택란을 선택하십시오. 학습서에서는 이 옵션을 선택하지 마십시오.
    • 클라이언트 프록시 클래스 이름 사용자 정의: 기본 프록시 이름을 승인할 수도 있고 직접 입력할 수도 있습니다. 학습서에서는 이 옵션을 선택하지 마십시오.
    • 스키마 라이브러리 생성: 이 옵션을 선택하면 Java 컴파일러에 대한 JAX-WS 스키마를 실행하여 스키마를 생성합니다. 이 학습서에서는 이 옵션을 선택하지 마십시오.
    • 웹 서비스 배치 디스크립터 생성: JAX-WS의 경우, 웹 서비스 배치 정보는 런타임에 의해 동적으로 생성되므로 정적 배치 디스크립터는 더 이상 필요하지 않습니다. 이 선택란를 선택하면 배치 디스크립터가 생성됩니다. 이 학습서에서는 배치 디스크립터가 필요하지 않습니다.
    • 생성할 JAX-WS 코드 버전: WebSphere Application Server 버전 7.0부터 JAX-WS 2.1 호환 코드를 생성할 수 있습니다. 이 학습서에서는 2.1을 선택합니다.
    다음을 클릭하십시오.
  4. 웹 서비스 클라이언트 테스트 페이지:
    • 생성된 프록시 테스트: 클라이언트의 기능을 테스트하려면 이 옵션을 선택하십시오.
    • 테스트 기능을 선택하십시오. 유니버셜 테스트 클라이언트 또는 웹 서비스 탐색기에서 생성된 프록시를 테스트하거나 샘플 JAX-WS 2.0 JSP를 생성할 수 있습니다. 이 학습서에서는 JAX-WS JSP를 선택하십시오.
    • 폴더: JSP가 위치할 폴더를 선택할 수 있습니다. 기본값을 채택하십시오.
    • 메소드: 표시할 메소드를 선택하십시오. 비동기 메소드도 나열됩니다. 모든 메소드가 선택되었는지 확인하십시오.
    • 서버에서 테스트 실행: 자동으로 서버를 시작합니다.
    완료를 클릭하십시오. 샘플 JSP가 브라우저 창에 열립니다.

샘플 JSP를 사용하여 웹 서비스 클라이언트 테스트

다음 단계를 수행하면 웹 서비스를 동기적으로 테스트합니다.
  1. 올바른 옵션을 선택하면 TestClient.jsp가 자동으로 실행됩니다. TestClient.jsp가 표시되지 않는 경우에는 jwsAddressBookClient/WebContent/sampleAddressBookPortProxy/TestClient.jsp를 선택하고 마우스 오른쪽 단추를 클릭하여 실행 도구 > 서버에서 실행을 선택하십시오.
  2. 서비스를 동기적으로 테스트하려면 saveAddress 메소드를 선택하고 이름 필드에 정보를 입력하십시오. 기타 모든 필드는 선택사항입니다. 호출을 클릭하십시오.
  3. findAddress 메소드를 선택하고 saveAddress 메소드 실행 중 사용한 이름을 입력한 후 호출을 클릭하십시오. saveAddress 메소드로 저장한 정보가 결과 분할창에 표시되어야 합니다.
  4. 서비스를 비동기로 테스트하려면 서비스 품질 분할창에서 비동기 호출 사용 선택란을 선택하십시오.
  5. findAddress 메소드를 선택하고 saveAddress 메소드 실행 중 사용한 이름을 입력한 후 호출을 클릭하십시오.
  6. 메소드가 진행 중임을 나타내는 새 링크가 표시됩니다. 링크를 클릭하여 결과 분할창에 메소드 응답을 표시하십시오.

웹 서비스를 테스트한 후에는 웹 서비스 및 클라이언트의 보안을 설정한 후 다시 서비스를 테스트할 수 있도록 JSP를 열어 두십시오.

학습 체크포인트

< 이전 | 다음 >
주제 유형을 표시하는 아이콘 학습서 학습 주제
Information Center의 이용 약관 | 피드백

시간소인 아이콘 마지막 업데이트 날짜: 2014-05-22

파일 이름: jaxwstd_exercise13.html