В этой главе мы узнаем, как создать клиент для сервера веб-приложений, созданного на Spring WS — Writing Server с использованием Spring WS.
шаг | Описание |
---|---|
1 | Обновите проект countryService в пакете com.tutorialspoint, как описано в главе Spring WS — Writing Server. |
2 | Создайте CountryServiceClient.java в пакете com.tutorialspoint.client и MainApp.java в пакете com.tutorialspoint, как описано в следующих шагах. |
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()); } }
Запустите веб-сервис
Запустите сервер Tomcat и убедитесь, что мы можем получить доступ к другим веб-страницам из папки веб-приложений с помощью стандартного браузера.
Тестовый клиент веб-службы
Щелкните правой кнопкой мыши файл MainApp.java в вашем приложении под Eclipse и используйте команду run as Java Application . Если с приложением все в порядке, оно напечатает следующее сообщение.
Country : United States Capital : Washington Population : 46704314 Currency : USD
Здесь мы создали Client — CountryServiceClient.java для веб-службы на основе SOAP. MainApp использует CountryServiceClient для доступа к веб-сервису, отправляет запрос и получает данные.