WS - ćwiczenie drugie

Korzystanie z Usług Sieciowych przy pomocy protokołu SOAP

Celem tego ćwiczenia jest stworzenie serwera udostępniającego usługę sieciową oraz klienta do tej usługi.

Poniższe ćwiczenie wykorzystuje JDK 1.6.

Począwszy od Javy 1.6 sposób tworzenia Web Serviców w języku Java został znacznie uproszczony. Wystarczy stworzyć klasę z wymaganą funkcjonalnością, opowiednio ją zannotować oraz udostępnić ją jako Web Service.

Stworzenie serwera

Klasa serwera musi znajdować sie w pakiecie. W naszym przypadku jest to pakiet example, dlatego też stworzona klasa serwera musi znadywać się w katalogu example.

package example;
import javax.jws.WebMethod;
import javax.jws.WebService;
import javax.xml.ws.Endpoint;

@WebService
public class EchoWSServer {
  @WebMethod
  public String echo(String msg) {
    System.out.println("Otrzymałem wiadomość: " + msg);
    return msg;
  }

  public static void main(String[] args){
    EchoWSServer calculator = new EchoWSServer();
    Endpoint endpoint = Endpoint.publish("http://localhost:8080/echo", calculator);
  }
}

Wygenerowanie klas Web Serwisu

Drugim niezbędnym krokiem jest wygenerowanie klas serwera Web Serwisu:

apt -d server example/EchoWSServer.java

W rezultacie w katalogu server umieszczone zostaną skompilowane klasy serwera.

Uruchomienie serwera

Po wykonaniu wszystkie poprzednich kroków jesteśmy gotowi do uruchomienia serwera następującą komendą:

java -cp server example.EchoWSServer

Po uruchomieniu serwisu możemy oglądnąc jego WSDLa pod adreesem:

http://localhost:8080/echo?wsdl

Stworzenie klenta

Proszę o stworzenie klienta do wykonanej usługi zgodnie z opisem z pierwszego ćwiczenia.
Marek Kasztelnik