핑 및 에코 - 구성


샘플 실행
Thin 클라이언트 샘플 실행
신뢰할 수 있는 메시징 및 보안 사용 가능

핑 및 에코 샘플은 두 개의 단순 JAX-WS 웹 서비스입니다.

핑 샘플은 단방향 조작에 대해 설명합니다. 단순 문자열 값이 서비스에 전달됩니다. 클라이언트 조작은 서비스에 접속한 후에 완료됩니다. 샘플에는 엔드포인트가 두 개 있습니다. 한 엔드포인트는 SOAP 1.1을 사용하고 다른 엔드포인트는 SOAP 1.2를 사용합니다.

에코 샘플은 양방향 조작에 대해 설명합니다. 단순 문자열 값이 서비스에 전달됩니다. 서비스는 ID 문자열 값을 앞에 첨부하고 이 값을 클라이언트에 다시 리턴합니다. 샘플에는 두 개의 엔드포인트가 있습니다. 한 엔드포인트는 SOAP 1.1을 사용하고 다른 엔드포인트는 SOAP 1.2를 사용합니다. 에코 샘플은 또한 동기 및 비동기 유선 전송 작동과 동기 및 비동기 프로그래밍 모델에 대해 설명합니다.


샘플 서비스 엔드포인트
URI 설명
http://localhost:9080/WSSampleSei/PingService
SOAP 1.1을 사용하는 핑 서비스 샘플
http://localhost:9080/WSSampleSei/PingService12
SOAP 1.2를 사용하는 핑 서비스 샘플
http://localhost:9080/WSSampleSei/EchoService
SOAP 1.1을 사용하는 에코 서비스 샘플
http://localhost:9080/WSSampleSei/EchoService12
SOAP 1.2를 사용하는 에코 서비스 샘플

기본값은 포트 9080이지만, AppSrv01 프로파일이 아닌 다른 프로파일을 설치하는 경우, 포트 번호는 달라집니다.



샘플 구성

핑 및 에코 샘플의 구성을 완료하려면, 서버에서 Jax-WS 웹 서비스 샘플 응용프로그램을 전개하십시오. 샘플 응용프로그램이 아직 전개되지 않은 경우에는 JaxWSServicesSamples.ear 파일 다시 빌드 및 전개를 참조하십시오.

샘플 실행

시작하기 전에 Application Server가 실행 중인지 확인한 후 클라이언트를 실행해야 합니다.

핑 및 에코 샘플에는 핑 및 에코의 두 서비스가 포함됩니다.

핑 및 에코 샘플 실행

핑 샘플은 단방향 서비스 트랜잭션에 대해 설명합니다. 이 샘플의 소스는 profile_root/samples/src/JaxWSServicesSamples/SampleClientSei 디렉토리에 있습니다.

에코 샘플은 양방향 서비스 트랜잭션에 대해 설명합니다. 이 샘플의 소스는 profile_root/samples/src/JaxWSServicesSamples/SampleClientSei 디렉토리에 있습니다.

WebSphere Application Server에서 핑 및 에코 클라이언트 Servlet을 실행하려면 다음 단계를 수행하십시오.

  1. 서버를 시작하십시오.
  2. 실행을 클릭하십시오.

핑 및 에코 Thin 클라이언트 샘플 실행

핑 및 에코 Thin 클라이언트 샘플은 핑 및 에코 클라이언트 Servlet과 유사합니다. 이 샘플에서는 같은 핑 및 에코 웹 서비스 Bean에 액세스하지만, 클래스 경로에서 WebSphere Application JAR(Java Archive) 파일과 함께 JAX-WS용 Thin Client가 필요한 JAR 파일을 사용합니다.

samples/lib/JaxWSServicesSamples 디렉토리에서 WSSampleClientSei.jar 파일을 찾을 수 있습니다.

핑 및 에코 Thin 클라이언트 샘플은 사용자가 제공하는 매개변수를 기반으로 핑 또는 에코 웹 서비스에 대한 JAX-WS 프록시를 작성합니다. 그런 다음 프록시는 메시지를 사용하여 서비스 엔드포인트에 접속합니다. 에코 샘플은 응답을 기다립니다.

다음 단계에서 app_server_root 변수는 Application Server 설치 루트를 나타냅니다.

WebSphere Application Server에서 핑 및 에코 Thin 클라이언트를 실행하려면 운영 체제에 따라 다음 단계를 수행하십시오.

  1. 서버를 시작하십시오.
  2. 명령 프롬프트를 여십시오.
  3. JaxWSServicesSamples 디렉토리로 이동하십시오.

    Windows 운영 체제:

    cd app_server_root\samples\bin\JaxWSServicesSamples

    AIX, Linux 및 z/OS와 같은 운영 체제:

    cd app_server_root/samples/bin/JaxWSServicesSamples

    iSeries 운영 체제:

    cd app_server_root/samples/bin/JaxWSServicesSamples

  4. 핑 및 에코 Thin 클라이언트 샘플을 실행하십시오.

    Windows 운영 체제:

    runSampleSei.bat -h hostname -p port -f urlSuffix -m testMessage -s service -t timeout -w asyncwire -c count -1 -2

    AIX, Linux 및 z/OS와 같은 운영 체제:

    ./runSampleSei.sh -h hostname -p port -f urlSuffix -m testMessage -s service -t timeout -w asyncwire -c count -1 -2

    iSeries 운영 체제:

    ./runSampleSei -h hostname -p port -f urlsuffix -m testMessage -s service -t timeout -w asyncwire -c count -1 -2

    매개변수는 다음과 같습니다.
    -h <hostname>은 호스트 이름입니다. 기본값은 localhost입니다.
    -p <port>는 포트 번호입니다. 기본값은 9080.입니다
    -f <urlsuffix>는 서비스 엔드포인트 컨텍스트입니다. 기본값은 /WSSampleSei/EchoService입니다.
    -m <message>는 메시지의 텍스트입니다. 기본값은 hello입니다. 메시지에 공백이 있는 경우, 따옴표를 사용하여 메시지를 묶으십시오.
    -c count는 실행할 트랜잭션의 수를 지정합니다. 기본값은 1입니다.
    -1은 SOAP 1.1을 사용하도록 지정합니다. 기본값은 SOAP 1.1입니다.
    -2는 SOAP 1.2를 사용하도록 지정합니다.

    다음 예제는 Windows 운영 체제에서 핑 및 에코 클라이언트 실행에 대해 설명합니다.


    runSampleSei.bat -p 9081
    Aug 8, 2007 7:01:00 PM com.ibm.ws.ssl.config.SSLConfigManager
    INFO: ssl.disable.url.hostname.verification.CWPKI0027I
    >> CLIENT: SEI Async to http://localhost:9081/WSSampleSei/EchoService
    [WAShttpAsyncResponseListener] listening on port 4733
    >> CLIENT: SEI Async invocation complete.
    >> CLIENT: SEI Async response is: JAX-WS==>>HELLO


샘플 클라이언트 및 응용프로그램의 작동 방법을 자세히 학습하려면 핑 및 에코 기술 노트를 참조하거나 Java 소스 코드를 보십시오.

웹 서비스 클라이언트에 대한 자세한 정보는 WebSphere Application Server Information Center 라이브러리의 웹 서비스 클라이언트 개발 및 전개에 대한 문서를 참조하십시오.

신뢰할 수 있는 메시징 및 보안 사용 가능

정책 세트 스크립트
핑 및 에코 Thin 클라이언트 샘플에 QoS 적용

정책 세트 스크립트

정책 세트는 ReliableMessaging 및 SecureConversation과 같은 서비스 품질(QoS)에 사용됩니다. 응용프로그램에 첨부된 정책 세트는 해당 응용프로그램의 서비스 품질을 정의합니다. WS-ReliableMessaging(WS-RM), WS-SecureConversation(WS-SC) 및 WS-I RSP(Reliable Secure Profile)에 대한 정책 세트를 사용하기 위해 스크립트 세트가 제공됩니다. RSP는 WS-RM과 WS-SC를 결합한 것입니다. 이 스트립트는 예제로 제공됩니다. 관리 콘솔을 통해 정책 세트를 사용할 수도 있습니다. 이 스크립트는 샘플 응용프로그램에 대해서만 작동하도록 설계되었습니다. 다음 테이블은 정책 세트 샘플 스크립트에 대해 설명합니다.

Windows 운영 체제용 스크립트
파일 이름 설명
enableRMQoS.bat WS-ReliableMessaging 버전 1.1 사용 가능
enableRM1QoS.bat WS-ReliableMessaging 버전 1.0 사용 가능
enableSCQoS.bat WS-SecureConversation 사용 가능
enableRSPQoS.bat WS-ReliableMessaging 및 WS-SecureConversation 사용 가능
enableWSAQoS.bat WS-Addressing 사용 가능
disableRMQoS.bat WS-ReliableMessaging 버전 1.1 사용 불가능
disableRM1QoS.bat WS-ReliableMessaging 버전 1.0 사용 불가능
disableSCQoS.bat WS-SecureConversation 사용 불가능
disableRSPQoS.bat WS-ReliableMessaging 및 WS-SecureConversation 사용 불가능
disableWSAQoS.bat WS-Addressing 사용 불가능

AIX, Linux 및 z/OS와 같은 운영 체제용 스크립트
파일 이름 설명
enableRMQoS.sh WS-ReliableMessaging 버전 1.1 사용 가능
enableRM1QoS.sh WS-ReliableMessaging 버전 1.0 사용 가능
enableSCQoS.sh WS-SecureConversation 사용 가능
enableRSPQoS.sh WS-ReliableMessaging 및 WS-SecureConversation 사용 가능
enableWSAQoS.sh WS-Addressing 사용 가능
disableRMQoS.sh WS-ReliableMessaging 버전 1.1 사용 불가능
disableRM1QoS.sh WS-ReliableMessaging 버전 1.0 사용 불가능
disableSCQoS.sh WS-SecureConversation 사용 불가능
disableRSPQoS.sh WS-ReliableMessaging 및 WS-SecureConversation 사용 불가능
disableWSAQoS.sh WS-Addressing 사용 불가능

i5/OS 운영 체제용 스크립트
파일 이름 설명
enableRMQoS WS-ReliableMessaging 버전 1.1 사용 가능
enableRM1QoS WS-ReliableMessaging 버전 1.0 사용 가능
enableSCQoS WS-SecureConversation 사용 가능
enableRSPQoS WS-ReliableMessaging 및 WS-SecureConversation 사용 가능
enableWSAQoS WS-Addressing 사용 가능
disableRMQoS WS-ReliableMessaging 버전 1.1 사용 불가능
disableRM1QoS WS-ReliableMessaging 버전 1.0 사용 불가능
disableSCQoS WS-SecureConversation 사용 불가능
disableRSPQoS WS-ReliableMessaging 및 WS-SecureConversation 사용 불가능
disableWSAQoS WS-Addressing 사용 불가능


다음 단계에 따라 Windows 운영 체제에서 신뢰할 수 있는 메시징 스크립트를 실행하십시오. 운영 체제에 따라 유사한 방법으로 모든 스크립트를 실행할 수 있습니다.

  1. 시작 메뉴에서 명령 프롬프트를 여십시오. 시작 -> 실행을 클릭하십시오. cmd를 입력하십시오.
  2. app_server_root/samples/bin/JaxWSServicesSamples 디렉토리로 변경하십시오. 예를 들어, cd C:/Program Files/IBM/WebSphere/AppServer/samples/bin/JaxWSServiceSamples를 실행하십시오.
  3. 신뢰할 수 있는 메시징 스크립트를 실행하십시오.
  4. (선택사항) 신뢰할 수 있는 메시징 또는 보안 스크립트를 실행할 때 프로파일, 셀, 노드 또는 서버 이름을 지정하십시오. 신뢰할 수 있는 메시징 및 보안의 사용 가능 및 사용 불가능 스크립트에는 네 개의 선택적 매개변수가 있습니다.

    다음 예제는 지정된 선택적 프로파일, 셀 및 노드 매개변수를 사용하여 WS-ReliableMessaging 사용 가능 스크립트를 실행하는 방법에 대해 설명합니다.

    enableRMQoS.bat AppSrv02 MyServerNode01Cell MyServerNode01

    다음 예제는 지정된 선택적 프로파일, 셀 및 노드 매개변수를 사용하여 WS-ReliableMessaging 사용 불가능 스크립트를 실행하는 방법에 대해 설명합니다.

    disableRMQoS.bat AppSrv02 MyServerNode01Cell MyServerNode01

  5. 필요하면 명령행에 추가 매개변수를 구성하십시오. 서버에 관리 보안이 사용 가능으로 설정된 경우, 사용자 ID 및 암호를 제공해야 하며 그렇지 않은 경우, 스크립트가 실패합니다. 예를 들면, 다음과 같습니다.
    ./enableRMQoS.sh -user myuserid -password mypassword
  6. 샘플 응용프로그램이 올바르게 시작되는지 확인하십시오. 경고 메시지를 수신하는 경우, 샘플 응용프로그램이 올바르지 않게 시작된 것입니다. 관리 콘솔을 사용하여 샘플 응용프로그램을 중지했다가 다시 시작하십시오.  

핑 및 에코 Thin 클라이언트 샘플에 QoS 적용

QoS 정책 세트로 핑 및 에코 Thin 클라이언트 샘플을 테스트하려면 다음 지침을 수행하십시오.
  1. 정책 세트 스크립트 섹션에 표시된 대로 샘플 응용프로그램에 테스트할 QoS를 적용하십시오.
  2. 운영 체제에 대해 runSampleSei 스크립트를 편집하십시오.
  3. WS-I RSP 및 SecureConversation 정책을 추가하려면 JAAS(Java Authentication and Authorization) 로그인 파일 경로를 포함하도록 다음 명령문을 추가하십시오.

    Windows 운영 체제:

    set JAASLOGIN=-Djava.security.auth.login.config=<profile_root>/properties/wsjaas_client.conf

    AIX, Linux 및 z/OS와 같은 운영 체제:

    export JAASLOGIN=-Djava.security.auth.login.config=<profile_root>/properties/wsjaas_client.conf

    profile_root는 프로파일이 있는 서버 디렉토리를 가리킵니다. 예를 들면 다음과 같습니다.
    set JAASLOGIN=-Djava.security.auth.login.config=C:/IBM/WebSphere/profiles/AppSrv02/properties/wsjaas_client.conf

  4. 클래스 경로 명령문을 변경하십시오.

    Windows 운영 체제:

    set CLASSPATH=%THIN_JAR%;./WSSampleClientSei.jar;.

    AIX, Linux 및 z/OS와 같은 운영 체제:

    export CLASSPATH=${THIN_JAR}:./WSSampleClientSei.jar:.

    참고: 마침표(.)가 클래스 경로 명령문의 맨 끝에 포함됩니다. 마침표가 포함되어야 정책 세트 로딩 코드가 META-INF 디렉토리를 찾을 수 있습니다. 마침표를 생략하지 마십시오.

  5. <JAASLOGIN> 및 -DUSER_INSTALL_ROOT="<profile_root>"를 Java 명령에 추가하십시오.

    Windows 운영 체제:

    java %JAASLOGIN% -DUSER_INSTALL_ROOT= "<profile_root>" -cp "%CLASSPATH%" com.ibm.was.wssample.sei.cli.SampleClient %*

    AIX, Linux 및 z/OS와 같은 운영 체제:

    java ${JAASLOGIN} -DUSER_INSTALL_ROOT="<profile_root>" -cp "${CLASSPATH} " com.ibm.was.wssample.sei.cli.SampleClient $@

  6. app_server_root/samples/bin/JaxWSServicesSamples 디렉토리에서 META-INF 디렉토리를 작성하십시오.
  7. PolicySets 디렉토리를 profile_root/config/cells/CELL_NAME/ 디렉토리에서 app_server_root/samples/bin/JaxWSServicesSamples/META-INF 디렉토리로 복사하십시오.
  8. profile_root/config/cells/ CELL_NAME/applications/JaxWSServicesSamples.ear/deployments/JaxWSServicesSamples/META-INF 디렉토리에서 app_server_root/samples/bin/JaxWSServicesSamples/META-INF 디렉토리로 clientPolicyAttachment.xml 파일과 바인딩 하위 디렉토리를 복사하십시오. 전체 바인딩 하위 디렉토리 및 해당 컨텐츠(예: SecureConversationClientBinding 또는 RAMP_client_default_bindings)를 복사하십시오.
  9. 현재 디렉토리를 app_server_root/samples/bin/JaxWSServicesSamples로 변경하고 샘플을 실행하십시오.