WSDL клиент Java - PullRequest
       17

WSDL клиент Java

0 голосов
/ 03 ноября 2011

надеюсь, что вы мне поможете, так как я потерялся после 5 дней серфинга.

Я создал клиент веб-службы с использованием NetBeans.

Часть кода: ...

mtsvmi.MGWPUBLICFUNCTIONSService service = new mtsvmi.MGWPUBLICFUNCTIONSService();
        mtsvmi.MGWPUBLICFUNCTIONSPortType proxy = (service.getMGWPUBLICFUNCTIONSPort());
        ((BindingProvider)proxy).getRequestContext().put(BindingProvider.USERNAME_PROPERTY, "username");
        ((BindingProvider)proxy).getRequestContext().put(BindingProvider.PASSWORD_PROPERTY, "password"); 

        QName portQName = new QName("http://xmlns.oracle.com/orawsv/SISTEMA_MOKA/MGW_PUBLIC_FUNCTIONS", "MGW_PUBLIC_FUNCTIONSPort");
        String req = "<INSERT_RECEIVES  xmlns=\"https://IP:PORT/orawsv/test/SISTEMA_MOKA/MGW_PUBLIC_FUNCTIONS\"><parameters>"+pingKonteineris+"</parameters></INSERT_RECEIVES>";

        try { // Call Web Service Operation
            Dispatch<Source> sourceDispatch = null;
            sourceDispatch = service.createDispatch(portQName, Source.class, Service.Mode.PAYLOAD);
            Source result = sourceDispatch.invoke(new StreamSource(new StringReader(req)));
//            System.out.println("---Ans: "+result.toString()+"---");
        } catch (Exception ex) {
           System.out.println(ex);
        }      

...

дает мне:

com.sun.xml.internal.ws.client.ClientTransportException: ошибка транспорта HTTP: java.net.ConnectException: соединение отказано: connect

Что я сделал не так?Как это исправить?Какая еще информация вам нужна, чтобы помочь мне здесь?Заранее спасибо.

Ответы [ 2 ]

1 голос
/ 03 ноября 2011

ConnectException, которое вы получаете, означает, что вашему приложению не удалось установить сокет-соединение с его целью.Как правило, это означает, что вы указали неправильное имя хоста или порт или что служба на другом конце не работает.

Из того, что вы опубликовали, не ясно, какая именно строка кода вызвала сбойили по какому адресу была сделана попытка подключения.Однако я рискнул бы предположить, что это линия, по которой вы звоните sourceDispatch.invoke - и что класс MGWPUBLICFUNCTIONSService отвечает за предоставление адреса.

Я предлагаю вам заглянуть в журналы, сообщения об ошибках и /или настройку, чтобы узнать, какой адрес используется и почему не удается установить соединение с этим адресом.Использование telnet для самостоятельной установки соединения может быть очень полезным при предварительном расследовании.

0 голосов
/ 05 декабря 2012

Я столкнулся с этой проблемой.и я решил это, изменив в файле .wsld

<service name="CalculatorService">
    <port binding="tns:CalculatorPortBinding" name="CalculatorPort">
        <soap:address
            location="http://localhost:6060/WebServiceProject/CalculatorPort" />
    </port>
</service>

, где мой номер порта был 8080 и изменился на 6060, который я использую.

может это поможет вам.попробуй.

...