Spring WS - Client schreiben

In diesem Kapitel erfahren Sie, wie Sie einen Client für den Webanwendungsserver erstellen, der im Spring WS - Writing Server mit Spring WS erstellt wurde.

Schritt Beschreibung
1 Aktualisieren Sie das Projekt countryService unter dem Paket com.tutorialspoint, wie im Kapitel Spring WS - Writing Server erläutert.
2 Erstellen Sie CountryServiceClient.java unter dem Paket com.tutorialspoint.client und MainApp.java unter dem Paket com.tutorialspoint, wie in den folgenden Schritten erläutert.

CountryServiceClient.java

package com.tutorialspoint.client;

import org.springframework.ws.client.core.support.WebServiceGatewaySupport;
import com.tutorialspoint.GetCountryRequest;
import com.tutorialspoint.GetCountryResponse;

public class CountryServiceClient extends WebServiceGatewaySupport {
   public GetCountryResponse getCountryDetails(String country){
      String uri = "http://localhost:8080/countryService/";
      GetCountryRequest request = new GetCountryRequest();
      request.setName(country);

      GetCountryResponse response =(GetCountryResponse) getWebServiceTemplate()
         .marshalSendAndReceive(uri, request);
      return response;
   }
}

MainApp.java

package com.tutorialspoint;

import org.springframework.oxm.jaxb.Jaxb2Marshaller;
import com.tutorialspoint.client.CountryServiceClient;

public class MainApp {
   public static void main(String[] args) {
      CountryServiceClient client = new CountryServiceClient();
      Jaxb2Marshaller marshaller = new Jaxb2Marshaller();
      marshaller.setContextPath("com.tutorialspoint");
      client.setMarshaller(marshaller);
      client.setUnmarshaller(marshaller);
      GetCountryResponse response = client.getCountryDetails("United States");

      System.out.println("Country : " + response.getCountry().getName());
      System.out.println("Capital : " + response.getCountry().getCapital());
      System.out.println("Population : " + response.getCountry().getPopulation());
      System.out.println("Currency : " + response.getCountry().getCurrency());
   }
}

Starten Sie den Webdienst

Starten Sie den Tomcat-Server und stellen Sie sicher, dass wir mit einem Standardbrowser über den Ordner webapps auf andere Webseiten zugreifen können.

Testen Sie den Webdienst-Client

Klicken Sie mit der rechten Maustaste auf die MainApp.java in Ihrer Anwendung unter Eclipse und verwenden Sie run as Java ApplicationBefehl. Wenn mit der Anwendung alles in Ordnung ist, wird die folgende Meldung gedruckt.

Country : United States
Capital : Washington
Population : 46704314
Currency : USD

Hier haben wir einen Client erstellt - CountryServiceClient.javafür den SOAP-basierten Webdienst. MainApp verwendet CountryServiceClient, um einen Treffer für den Webdienst zu erzielen, eine Post-Anfrage zu stellen und die Daten abzurufen.