Написание клиентов Webservice с использованием HttpURLConnection - PullRequest
2 голосов
/ 20 сентября 2011

У меня есть вопрос, связанный с веб-сервисами Axis2. Мой Web-сервис развернут на сервере Tomcat.

Сейчас я пишу клиент для своего веб-сервиса, используя

public static void main(String[] args) {
    try {
        samples.quickstart.StockQuoteServiceStub stub = new samples.quickstart.StockQuoteServiceStub();
        samples.quickstart.StockQuoteServiceStub.GetPrice request = new samples.quickstart.StockQuoteServiceStub.GetPrice();
        request.setSymbol("ABCDE");
        samples.quickstart.StockQuoteServiceStub.GetPriceResponse response = stub
        .getPrice(request);
    }
    catch (org.apache.axis2.AxisFault e) {
        e.printStackTrace();
        } catch (java.rmi.RemoteException e) {
        e.printStackTrace();
    }
}

Это отлично работает.

Я видел из сети, что некоторые клиенты пишутся с использованием HttpURLConnection.

Скажите, пожалуйста, в чем разница между написанием клиентов с использованием прежнего и позднего способов.

1 Ответ

2 голосов
/ 21 сентября 2011

То, как вы это сделали, дает вам более абстрактный путь.Он сгенерировал код для вас, и вам нужно только предоставить параметры для передачи.Здесь Axis2 использует общедоступный httpclient для отправки сообщений с использованием http-транспорта.Как вы можете видеть, Axis2 обрабатывает все специфические для вас вещи.

С другой стороны, вы можете создать мыльное сообщение для отправки от себя и отправки с использованием httpClient.Но там нужно много работать.

...