Spring WS - Cliente de escritura

En este capítulo, aprenderemos cómo crear un cliente para el servidor de aplicaciones web creado en Spring WS - Writing Server usando Spring WS.

Paso Descripción
1 Actualice el proyecto countryService en el paquete com.tutorialspoint como se explica en el capítulo Spring WS - Writing Server.
2 Cree CountryServiceClient.java en el paquete com.tutorialspoint.client y MainApp.java en el paquete com.tutorialspoint como se explica en los siguientes pasos.

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());
   }
}

Iniciar el servicio web

Inicie el servidor Tomcat y asegúrese de que podamos acceder a otras páginas web desde la carpeta webapps utilizando un navegador estándar.

Probar cliente de servicio web

Haga clic derecho en MainApp.java en su aplicación en Eclipse y use run as Java Applicationmando. Si todo está bien con la aplicación, imprimirá el siguiente mensaje.

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

Aquí, hemos creado un Cliente: CountryServiceClient.javapara el servicio web basado en SOAP. MainApp utiliza CountryServiceClient para realizar un acceso al servicio web, realiza una solicitud de publicación y obtiene los datos.