CXF 2.4.2: Не найден инициатор канала для пространства имен http://schemas.xmlsoap.org/soap/http

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

Я нашел решения (старые сообщения), которые рекомендуют использовать расширения http-jetty . Я не верю, что это имеет смысл для меня, потому что сервер не работает локально.

Я также обнаружил, что ближайшая конфигурация, которая помогает мне, является примером cxf.xml файла, который содержит:


    
        
            http://cxf.apache.org/transports/local
            http://cxf.apache.org/transports/http
            http://schemas.xmlsoap.org/soap/http
            http://schemas.xmlsoap.org/wsdl/soap/http
        
    

Эта конфигурация содержит руководство по настройке транспортного завода и привязке его к http://schemas.xmlsoap.org/soap/http . При попытке с помощью HTTPTransportFactory я получаю исключение, что он не может быть инициализирован (такая ошибка метода отсутствует).

Caused by: org.apache.cxf.BusException: No conduit initiator was found for the namespace http://schemas.xmlsoap.org/soap/http.
    at org.apache.cxf.transport.ConduitInitiatorManagerImpl.getConduitInitiator(ConduitInitiatorManagerImpl.java:112)
    at org.apache.cxf.endpoint.AbstractConduitSelector.getSelectedConduit(AbstractConduitSelector.java:73)
    at org.apache.cxf.endpoint.UpfrontConduitSelector.prepare(UpfrontConduitSelector.java:61)
    at org.apache.cxf.endpoint.ClientImpl.prepareConduitSelector(ClientImpl.java:708)
    at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:476)
    at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:309)
    at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:261)
    at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
    at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:127)

Меры предосторожности: На данном этапе я остановлю попытку обновления клиента CXF до 2,4,2 и вернусь к самой старой версии, которая работает (серия 2,2). Это не идеально.

Я хотел бы продолжить обновление. Любые предложения по настройке 2.4.X CXF так, чтобы провода конфигурации HTTP SOAP, доступные только для клиента, были бы очень понятны.

21
задан Polostor 6 November 2017 в 08:57
поделиться