Usługi Ping and Echo - konfigurowanie


Uruchamianie przykładu
Uruchamianie przykładu cienkiego klienta
Włączanie niezawodnego przesyłania komunikatów i zabezpieczeń

Ping i Echo są prostymi przykładowymi usługami WWW JAX-WS.

Przykład usługi Ping przedstawia operację jednokierunkową. Do usługi jest przekazywana prosta wartość łańcuchowa. Działanie klienta kończy się po nawiązaniu kontaktu z usługą. W tym przykładzie istnieją dwa punkty końcowe. Jeden punkt końcowy używa protokołu SOAP 1.1, a drugi - protokołu SOAP 1.2.

Przykład usługi Echo przedstawia operację dwukierunkową. Do usługi jest przekazywana prosta wartość łańcuchowa. Usługa dodaje na początku łańcucha wartość identyfikatora i zwraca wynikową wartość do klienta. W tym przykładzie istnieją dwa punkty końcowe. Jeden punkt końcowy używa protokołu SOAP 1.1, a drugi - protokołu SOAP 1.2. Przykład usługi Echo także przedstawia synchroniczny i asynchroniczny model programowania oraz synchroniczne i asynchroniczne zachowanie na poziomie nośnika:


Punkty końcowe usługi przykładowej
Identyfikator URI Opis
http://localhost:9080/WSSampleSei/PingService
Przykład usługi Ping z użyciem protokołu SOAP 1.1
http://localhost:9080/WSSampleSei/PingService12
Przykład usługi Ping z użyciem protokołu SOAP 1.2
http://localhost:9080/WSSampleSei/EchoService
Przykład usługi Echo z użyciem protokołu SOAP 1.1
http://localhost:9080/WSSampleSei/EchoService12
Przykład usługi Echo z użyciem protokołu SOAP 1.2

Port 9080 to wartość domyślna. Jednak numer portu będzie inny, jeśli przykład zostanie zainstalowany w innym profilu niż AppSrv01.



Konfigurowanie przykładu

W celu skonfigurowania przykładu usług Ping i Echo należy wdrożyć na serwerze przykładową aplikację usług WWW Jax-WS. Jeśli przykładowa aplikacja nie została jeszcze wdrożona, należy zapoznać się z instrukcjami w sekcji Odbudowywanie i wdrażanie pliku JaxWSServicesSamples.ear.

Uruchamianie przykładu

Przed uruchomieniem klientów należy sprawdzić, czy serwer aplikacji jest uruchomiony.

Przykład obejmuje dwie usługi, Ping i Echo.

Uruchamianie przykładu usług Ping i Echo

Przykład usługi Ping przedstawia transakcję jednokierunkową. Kod źródłowy tego przykładu znajduje się w katalogu katalog_główny_profilu/samples/src/JaxWSServicesSamples/SampleClientSei.

Przykład usługi Echo przedstawia transakcję dwukierunkową. Kod źródłowy tego przykładu znajduje się w katalogu katalog_główny_profilu/samples/src/JaxWSServicesSamples/SampleClientSei.

Aby uruchomić serwlet klienta usług Ping i Echo z poziomu serwera WebSphere Application Server, wykonaj następujące kroki:

  1. Uruchom serwer.
  2. Kliknij przycisk Uruchom.

Uruchamianie przykładu cienkiego klienta usług Ping i Echo

Przykład cienkiego klienta usług Ping i Echo jest podobny do serwletu klienta usług Ping i Echo. Przykład korzysta z tych samych komponentów bean usług WWW Ping i Echo, ale używa pliku JAR wymagającego, aby na ścieżce klas znajdował się plik JAR cienkiego klienta dla usług JAX-WS z serwerem WebSphere Application Server.

Plik WSSampleClientSei.jar znajduje się w katalogu samples/lib/JaxWSServicesSamples.

Przykład cienkiego klienta usług Ping i Echo tworzy obiekt proxy usług JAX-WS dla usługi Ping lub Echo na podstawie parametrów podanych przez użytkownika. Następnie obiekt proxy nawiązuje kontakt z punktem końcowym usługi i przesyła komunikat. Przykład usługi Echo oczekuje także na odpowiedź.

W poniższych krokach zmienna katalog_główny_serwera_aplikacji oznacza główny katalog instalacyjny serwera aplikacji.

Aby uruchomić cienkiego klienta usług Ping i Echo z poziomu serwera WebSphere Application Server, wykonaj następujące kroki odpowiednie dla używanego systemu operacyjnego:

  1. Uruchom serwer.
  2. Otwórz wiersz komend.
  3. Przejdź do katalogu JaxWSServicesSamples.

    W systemach operacyjnych Windows:

    cd katalog_główny_serwera_aplikacji\samples\bin\JaxWSServicesSamples

    W systemach operacyjnych takich jak AIX, Linux i z/OS:

    cd katalog_główny_serwera_aplikacji/samples/bin/JaxWSServicesSamples

    W systemach operacyjnych iSeries:

    cd katalog_główny_serwera_aplikacji/samples/bin/JaxWSServicesSamples

  4. Uruchom przykładowego cienkiego klienta usług Ping i Echo.

    W systemach operacyjnych Windows:

    runSampleSei.bat -h nazwa_hosta -p port -f przyrostek_URL -m komunikat_testowy -s usługa -t limit_czasu -w asynchr -c licznik -1 -2

    W systemach operacyjnych takich jak AIX, Linux i z/OS:

    ./runSampleSei.sh -h nazwa_hosta -p port -f przyrostek_URL -m komunikat_testowy -s usługa -t limit_czasu -w asynchr -c licznik -1 -2

    W systemach operacyjnych iSeries:

    ./runSampleSei -h nazwa_hosta -p port -f przyrostek_URL -m komunikat_testowy -s usługa -t limit_czasu -w asynchr -c licznik -1 -2

    Parametry:
    -h <nazwa_hosta> określa nazwę hosta. Wartość domyślna to localhost.
    -p <port> określa numer portu. Wartość domyślna to 9080.
    -f <przyrostek_URL> określa kontekst punktu końcowego usługi. Wartość domyślna to /WSSampleSei/EchoService.
    -m <komunikat_testowy> określa tekst komunikatu. Wartość domyślna to hello. Jeśli komunikat zawiera odstępy, należy ujęć go w cudzysłów.
    -c licznik określa liczbę transakcji, jakie mają zostać wykonane. Wartość domyślna to 1.
    -1 określa, że ma zostać użyty protokół SOAP 1.1. Wartość domyślna to SOAP 1.1.
    -2 określa, że ma zostać użyty protokół SOAP 1.2.

    Poniższy przykład przedstawia rezultat pomyślnego uruchomienia aplikacji klienta usług Ping i Echo w systemie operacyjnym 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


Więcej informacji na temat działania przykładowego klienta i aplikacji można uzyskać, przeglądając noty techniczne usług Ping i Echo oraz kod źródłowy Java.

Więcej informacji na temat klientów usług WWW można znaleźć w dokumentacji tworzenia i wdrażania klientów usług WWW w bibliotece Centrum informacyjnego serwera WebSphere Application Server.

Włączanie niezawodnego przesyłania komunikatów i zabezpieczeń

Skrypty zestawów strategii
Stosowanie usługi QoS do przykładu cienkiego klienta usług Ping i Echo

Skrypty zestawów strategii

Zestawy strategii służą do włączania funkcji jakości usługi (QoS), takich jak ReliableMessaging (niezawodne przesyłanie komunikatów) i SecureConversation (zabezpieczona konwersacja). Dołączone do aplikacji zestawy strategii definiują jakość usługi dla danej aplikacji. Dostępny jest zestaw skryptów umożliwiający włączanie zestawów strategii dla usług WS-ReliableMessaging (WS-RM), WS-SecureConversation (WS-SC) oraz WS-I Reliable Secure Profile (RSP). Usługa RSP obejmuje usługi WS-RM i WS-SC. Te skrypty są udostępniane jako przykłady. Zestawy strategii można także włączać za pomocą Konsoli administracyjnej. Dostarczone skrypty są przeznaczone tylko do współpracy z przykładowymi aplikacjami. Poniższa tabela przedstawia przykładowe skrypty zestawów strategii.

Skrypty dla systemu operacyjnego Windows
Nazwa pliku Opis
enableRMQoS.bat Włącza usługę WS-ReliableMessaging w wersji 1.1
enableRM1QoS.bat Włącza usługę WS-ReliableMessaging w wersji 1.0
enableSCQoS.bat Włącza usługę WS-SecureConversation
enableRSPQoS.bat Włącza usługi WS-ReliableMessaging i WS-SecureConversation
enableWSAQoS.bat Włącza usługę WS-Addressing
disableRMQoS.bat Wyłącza usługę WS-ReliableMessaging w wersji 1.1
disableRM1QoS.bat Wyłącza usługę WS-ReliableMessaging w wersji 1.0
disableSCQoS.bat Wyłącza usługę WS-SecureConversation
disableRSPQoS.bat Wyłącza usługi WS-ReliableMessaging i WS-SecureConversation
disableWSAQoS.bat Wyłącza usługę WS-Addressing

Skrypty dla systemów operacyjnych takich jak AIX, Linux i z/OS
Nazwa pliku Opis
enableRMQoS.sh Włącza usługę WS-ReliableMessaging w wersji 1.1
enableRM1QoS.sh Włącza usługę WS-ReliableMessaging w wersji 1.0
enableSCQoS.sh Włącza usługę WS-SecureConversation
enableRSPQoS.sh Włącza usługi WS-ReliableMessaging i WS-SecureConversation
enableWSAQoS.sh Włącza usługę WS-Addressing
disableRMQoS.sh Wyłącza usługę WS-ReliableMessaging w wersji 1.1
disableRM1QoS.sh Wyłącza usługę WS-ReliableMessaging w wersji 1.0
disableSCQoS.sh Wyłącza usługę WS-SecureConversation
disableRSPQoS.sh Wyłącza usługi WS-ReliableMessaging i WS-SecureConversation
disableWSAQoS.sh Wyłącza usługę WS-Addressing

Skrypty dla systemu operacyjnego i5/OS
Nazwa pliku Opis
enableRMQoS Włącza usługę WS-ReliableMessaging w wersji 1.1
enableRM1QoS Włącza usługę WS-ReliableMessaging w wersji 1.0
enableSCQoS Włącza usługę WS-SecureConversation
enableRSPQoS Włącza usługi WS-ReliableMessaging i WS-SecureConversation
enableWSAQoS Włącza usługę WS-Addressing
disableRMQoS Wyłącza usługę WS-ReliableMessaging w wersji 1.1
disableRM1QoS Wyłącza usługę WS-ReliableMessaging w wersji 1.0
disableSCQoS Wyłącza usługę WS-SecureConversation
disableRSPQoS Wyłącza usługi WS-ReliableMessaging i WS-SecureConversation
disableWSAQoS Wyłącza usługę WS-Addressing


Użyj poniższych kroków, aby uruchomić skrypty niezawodnego przesyłania komunikatów w systemie operacyjnym Windows. Wszystkie pozostałe skrypty można uruchamiać w podobny sposób odpowiednio do używanego systemu operacyjnego.

  1. Otwórz wiersz komend przy użyciu menu Start: kliknij opcję Start -> Uruchom. Wprowadź komendę cmd.
  2. Przejdź do katalogu katalog_główny_serwera_aplikacji/samples/bin/JaxWSServicesSamples. Na przykład: cd C:/Program Files/IBM/WebSphere/AppServer/samples/bin/JaxWSServiceSamples
  3. Uruchom skrypty niezawodnego przesyłania komunikatów.
  4. (Opcjonalnie) Określ nazwę profilu, komórki, węzła lub serwera podczas uruchamiania skryptów niezawodnego przesyłania komunikatów lub skryptów zabezpieczeń. Skrypty włączające i wyłączające niezawodne przesyłanie komunikatów i zabezpieczenia obsługują cztery opcjonalne parametry:

    Poniższy przykład przedstawia sposób uruchamiania skryptu włączającego usługę WS-ReliableMessaging z określonymi opcjonalnymi parametrami profilu, komórki i węzła:

    enableRMQoS.bat AppSrv02 MyServerNode01Cell MyServerNode01

    Poniższy przykład przedstawia sposób uruchamiania skryptu wyłączającego usługę WS-ReliableMessaging z określonymi opcjonalnymi parametrami profilu, komórki i węzła:

    disableRMQoS.bat AppSrv02 MyServerNode01Cell MyServerNode01

  5. Skonfiguruj dodatkowe parametry wiersza komend stosownie do potrzeb. Jeśli na serwerze są włączone zabezpieczenia administracyjne, należy podać ID użytkownika i hasło; w przeciwnym razie wykonanie skryptu nie powiedzie się. Na przykład:
    ./enableRMQoS.sh -user mój_ID_użytkownika -password moje_hasło
  6. Upewnij się, że przykładowe aplikacje są uruchamiane poprawnie. Wyświetlenie komunikatu ostrzegawczego może świadczyć o wystąpieniu problemów podczas uruchamiania przykładowych aplikacji. Za pomocą Konsoli administracyjnej zatrzymaj przykładowe aplikacje, a następnie zrestartuj je.  

Stosowanie usługi QoS do przykładu cienkiego klienta usług Ping i Echo

Aby wykonać test przykładu cienkiego klienta usług Ping i Echo z zestawami strategii QoS, postępuj zgodnie z poniższymi wytycznymi:
  1. Zastosuj strategię jakości usług (QoS), która ma zostać przetestowana, do przykładowej aplikacji zgodnie z instrukcjami w sekcji Skrypty zestawów strategii.
  2. Zmodyfikuj plik runSampleSei odpowiednio dla używanego systemu operacyjnego.
  3. Aby dodać strategie WS-I RSP oraz SecureConversation, dodaj następującą instrukcję w celu dołączenia ścieżek do pliku logowania JAAS (Java Authentication and Authorization):

    W systemach operacyjnych Windows:

    set JAASLOGIN=-Djava.security.auth.login.config=<katalog_główny_profilu>/properties/wsjaas_client.conf

    W systemach operacyjnych takich jak AIX, Linux i z/OS:

    export JAASLOGIN=-Djava.security.auth.login.config=<katalog_główny_profilu>/properties/wsjaas_client.conf

    Zmienna katalog_główny_profilu wskazuje katalog na serwerze, w którym znajduje się profil, na przykład:
    set JAASLOGIN=-Djava.security.auth.login.config=C:/IBM/WebSphere/profiles/AppSrv02/properties/wsjaas_client.conf

  4. Zmień instrukcję ścieżki klasy.

    W systemach operacyjnych Windows:

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

    W systemach operacyjnych takich jak AIX, Linux i z/OS:

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

    Należy zwrócić uwagę na znak kropki (.) dodany na końcu instrukcji ścieżki klas. Kropka ta jest konieczna, aby kod ładujący zestaw strategii mógł odnaleźć katalog META-INF. Nie należy pomijać tej kropki.

  5. Dodaj parametry <JAASLOGIN> i -DUSER_INSTALL_ROOT="<katalog_główny_profilu>" do komendy języka Java.

    W systemach operacyjnych Windows:

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

    W systemach operacyjnych takich jak AIX, Linux i z/OS:

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

  6. W katalogu katalog_główny_serwera_aplikacji/samples/bin/JaxWSServicesSamples utwórz katalog o nazwie META-INF.
  7. Skopiuj katalog PolicySets z katalogu katalog_główny_profilu/config/cells/NAZWA_KOMÓRKI/ do katalogu katalog_główny_serwera_aplikacji/samples/bin/JaxWSServicesSamples/META-INF.
  8. Skopiuj podkatalog powiązań oraz plik clientPolicyAttachment.xml z katalogu katalog_główny_profilu/config/cells/ NAZWA_KOMÓRKI/applications/JaxWSServicesSamples.ear/deployments/JaxWSServicesSamples/META-INF do katalogu katalog_główny_serwera_aplikacji/samples/bin/JaxWSServicesSamples/META-INF. Skopiuj cały podkatalog powiązań wraz z jego treścią, na przykład z plikiem SecureConversationClientBinding lub RAMP_client_default_bindings.
  9. Zmień aktualny katalog na katalog_główny_serwera_aplikacji/samples/bin/JaxWSServicesSamples i uruchom przykład.