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.