【发布时间】:2012-03-30 13:38:30
【问题描述】:
我们正在尝试为我们的 cxf jaxrs 服务提供一个非 Spring 客户端。 (不是网络客户端)
我们的 spring-context 中有以下元素(用于启用 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
谢谢,
加亚特里
【问题讨论】:
-
你检查过How to configure the HTTPConduit for the SOAP Client吗?它展示了如何创建
HTTPConduit,您需要创建AuthorizationPolicy并将其设置为Negotiate。 -
是的。但在我们的例子中,它是一个安静的客户端,上面代码中的“clientBean”没有公开“getConduit”方法。在相关说明中,它公开了 'getConduitSelector' 和 'setConduitSelector' ,但不清楚是否需要设置 AuthorizationPolicy。
标签: java client cxf jax-rs kerberos