Вызов веб-службы без wsdl

Я хочу написать программу на Java для вызова веб-службы. WSDL недоступен для этого веб-сервиса. Я написал программы для вызова веб-службы, которая имеет wsdl. Здесь я понятия не имею, как мне поступить. Не могу найти много образцов в Интернете.

Есть ли лучшая каркасная конструкция, которую я могу использовать? Я получаю вывод JSON из веб-службы.

Я смотрю на варианты написания наилучшего возможного варианта (если бы я мог написать обобщенную программу, которая могла бы использоваться для многих веб-сервисов без значительных изменений, было бы здорово)

1 ответ

Решение

Ну, есть несколько способов потреблять отдых службы.

Используя Spring Framework:

import org.springframework.web.client.RestTemplate

RestTemplate restTemplate = new RestTemplate();
User user = restTemplate.getForObject("http://localhost:8080/users/2", User.class);
System.out.println("Username:    " + user.getUsername());

Используя apache httpclient:

DefaultHttpClient httpClient = new DefaultHttpClient();
HttpGet getRequest = new HttpGet("http://localhost:8080/users/2");
HttpResponse response = httpClient.execute(getRequest);
HttpEntity httpEntity = response.getEntity();
String userString = EntityUtils.toString(httpEntity);
// Transform 'userString' into object using for example GSON:
Gson gson = new Gson();
User user = gson.fromJson(userString, User.class);
System.out.println("Username:    " + user.getUsername());
Другие вопросы по тегам