JAVA | CXF JAXRS Non-Spring клиент - PullRequest
2 голосов
/ 30 марта 2012

Мы пытаемся найти не-весенний клиент для наших сервисов cxf jaxrs. (Не веб-клиент)

В нашем Spring-контексте есть следующий элемент (для включения аутентификации kerberos):

<http:conduit name="*.http-conduit">
        <http:authorization>
            <sec:AuthorizationType>Negotiate</sec:AuthorizationType>
        </http:authorization>
</http:conduit>

Есть идеи, как это можно преобразовать в код Java?

Пример кода клиента:

JAXRSClientFactoryBean clientBean = new JAXRSClientFactoryBean();
clientBean.setResourceClass(ServiceClassName.class);
clientBean.setAddress(restful-service-url);

Документация CXF не указывает это ясно: http://cxf.apache.org/docs/jax-rs-client-api.html#JAX-RSClientAPI-CreatingclientsprogrammaticallywithnoSpringdependencies

Спасибо
Гаятри

1 Ответ

0 голосов
/ 19 октября 2012

dma_k указывал вам правильную информацию для сервисов SOAP. Если вы ищете прямой ответ на услуги REST, отметьте http://cxf.apache.org/docs/jax-rs-client-api.html#JAX-RSClientAPI-ConfiguringClientsatRuntime

YourService proxy = JAXRSClientFactory.create(YourService.class);
ClientConfiguration config = WebClient.getConfig(proxy);
HTTPConduit conduit1 = (HTTPConduit)config.getConduit();
System.out.println(conduit1.getClient().getProxyServer());

Этот код позволяет вам получить доступ к каналу службы REST, а затем настроить его так, как вы хотите. Вам просто нужно пройти через метод WebClient.getConfig ().

С уважением, Gabriel

...