웹 서비스가 배치되는 위치 및 이 서비스에서 제공하는 조작에 대해 설명하는 WSDL 문서에서
웹 서비스 클라이언트를 작성합니다. 웹 서비스 마법사에서 생성되는 정적 WSDL 파일을 사용하거나,
JAX-WS 웹 서비스 작성 시 Java
클래스에 추가되는 어노테이션에서 수집하는 정보를 기반으로 런타임에서 생성되는
동적 WSDL 파일을 사용할 수 있습니다. 이 학습서에서는
동적 WSDL 파일을 사용합니다.
동적으로 생성된 WSDL 보기
서버가 시작되면, 어노테이션이 있는 Bean을 신속하게 테스트하여 웹 서비스인지 여부를 확인하고
동적 WSDL 파일을 생성할 수 있어야 합니다.
웹 서비스에서 사용 중인 포트를 아직 모르는 경우, 이 포트를
판별하십시오. 포트를 판별하려면 다음을 수행하십시오.
서버 보기에서 사용자의 서버를 마우스 오른쪽 단추로 클릭하고
관리 > 관리 콘솔 실행을 선택하여 WebSphere
Application Server
관리 콘솔을 실행하십시오.
서버 > 서버 유형을 펼치고
WebSphere Application Server를 선택하십시오.
목록에서 서버 이름을 선택하십시오. 기본적으로 서버
이름은 server1입니다.
구성 탭에서 통신 표제를 검색하고
포트를 펼치십시오.
사용되는 포트는 WC_defaulthost입니다. 이 학습서에서는
예제 포트 번호 9081을 사용합니다. 이후 단계 중 아무 단계에서나
이 번호를 사용자의 포트 번호로 바꾸십시오.
아이콘을
클릭하여 웹 브라우저를 실행하십시오.
브라우저에 URL http://localhost:9081/jwsAddressBook/AddressBookService를 입력하고
돌아가기를 누르십시오. 해당 항목이 웹 서비스임을 나타내는 페이지가 표시됩니다.
3단계에서
URL의 끝에 다음과 같이 ?wsdl을 추가하고 돌아가기를
다시 누르십시오. http://localhost:9081/jwsAddressBook/AddressBookService?wsdl.
동적으로 생성된 WSDL 파일이 표시됩니다. 서버가 실행 중인 동안에는
웹 서비스 마법사가 생성한 정적 WSDL 파일을 사용하는 것과 동일한 방법으로 이 파일을 사용할 수 있습니다.
주소록 웹 서비스 클라이언트 작성 및 JSP 테스트
파일 >새로 작성>기타를 클릭하십시오. 다양한 웹 서비스 마법사를 표시하려면
웹 서비스를 선택하십시오. 웹 서비스 클라이언트 마법사를 선택하십시오. 다음을 클릭하십시오.
웹 서비스 페이지: 다음과 같은 이전 절에서 발견한 동적으로 생성된
WSDL 파일의 URL을 서비스 정의 필드에
입력하십시오: http://localhost:9081/jwsAddressBook/AddressBookService?wsdl.
슬라이더를 사용하여 완료할 웹 서비스 클라이언트 개발 단계를 선택하십시오. 이 학습서에서는 클라이언트
테스트를 선택하십시오. 이 단계를 선택하면 모든 필수 클라이언트 코드가 생성되며
클라이언트에 대해 다양한 테스트 옵션을 제공합니다.
서버: WebSphere v7.0
이상 서버가 선택되었는지 확인하십시오.
웹 서비스 런타임: JAX-WS 런타임이 선택되었는지 확인하십시오.
클라이언트 프로젝트: 학습 1에서 작성한 다음과 같은 클라이언트 프로젝트를
선택하십시오: jwsAddressBookClient.
클라이언트 EAR 프로젝트: jwsAddressBookEAR을 선택하십시오. JAX-WS 웹 서비스의 경우, 서버와 클라이언트 프로젝트가 동일한 EAR을 공유할 수 있습니다.
웹 서비스 모니터: 이 단계에서는 웹 서비스에서 생성된 SOAP 트래픽을 관찰하고 WS-I 준수를 확인하기 위해 이 트래픽을
테스트할 수 있는 TCP/IP 모니터를 통해 웹 서비스 트래픽을 송신합니다. TCP/IP 모니터는 RSP 정책 세트를 사용하여
보안 설정한 웹 서비스를 모니터할 수 없으므로 이 옵션을 선택하지 마십시오.
다음을 클릭하십시오.
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을 선택합니다.
다음을 클릭하십시오.
웹 서비스 클라이언트 테스트 페이지:
생성된 프록시 테스트: 클라이언트의 기능을 테스트하려면 이 옵션을
선택하십시오.
테스트 기능을 선택하십시오. 유니버셜 테스트 클라이언트 또는 웹 서비스 탐색기에서 생성된 프록시를
테스트하거나 샘플 JAX-WS 2.0 JSP를 생성할 수 있습니다. 이 학습서에서는 JAX-WS JSP를
선택하십시오.
올바른 옵션을 선택하면 TestClient.jsp가
자동으로 실행됩니다. TestClient.jsp가 표시되지 않는 경우에는 jwsAddressBookClient/WebContent/sampleAddressBookPortProxy/TestClient.jsp를 선택하고 마우스 오른쪽
단추를 클릭하여 실행 도구 > 서버에서 실행을 선택하십시오.
서비스를 동기적으로 테스트하려면 saveAddress 메소드를
선택하고 이름 필드에 정보를 입력하십시오. 기타 모든 필드는
선택사항입니다. 호출을 클릭하십시오.
findAddress 메소드를 선택하고 saveAddress 메소드 실행 중
사용한 이름을 입력한 후 호출을 클릭하십시오.
saveAddress 메소드로 저장한 정보가 결과 분할창에
표시되어야 합니다.
서비스를 비동기로 테스트하려면 서비스 품질 분할창에서
비동기 호출 사용 선택란을 선택하십시오.
findAddress 메소드를 선택하고 saveAddress 메소드 실행 중
사용한 이름을 입력한 후 호출을 클릭하십시오.
메소드가 진행 중임을 나타내는 새 링크가
표시됩니다. 링크를 클릭하여 결과 분할창에 메소드 응답을 표시하십시오.
웹 서비스를 테스트한 후에는 웹 서비스 및 클라이언트의 보안을 설정한 후 다시 서비스를 테스트할 수 있도록
JSP를 열어 두십시오.