【问题标题】:cxf client authorization issuecxf 客户端授权问题
【发布时间】:2011-06-04 00:25:44
【问题描述】:

我使用 JAXRSClientFactory.create 方法来创建这样的代理:

IMyService myService 
 = JAXRSClientFactory.create("http://myserviceurl/", IMyService.class, "login1", "pwd", null);

并且这段代码工作正常。

之后我需要将此服务与另一个凭据一起使用,并尝试使用另一个凭据创建相同的服务,如下所示:

IMyService myNewService 
 = JAXRSClientFactory.create("http://myserviceurl/", IMyService.class, "login2", "pwd", null);

此代码有效,但使用了错误的凭据(使用来自第一个服务的凭据)。我没有找到任何改变它的方法(重置、清除或类似的东西)。

还有一个细节,这个问题只有摘要授权。使用基本版效果很好。

谁能帮我解决这个问题。

谢谢。

【问题讨论】:

  • 我认为 myNewService 使用与 myService 相同的 HTTP 会话,但我在互联网上找不到任何关于如何强制新会话的信息

标签: java cxf jax-rs digest digest-authentication


【解决方案1】:

也许这样的事情应该可行:

Endpoint endpoint = WebClient.getConfig(client).getEndpoint();
AuthorizationPolicy policy = endpoint.getEndpointInfo().getExtensor(AuthorizationPolicy.class)
policy.setUserName("login2");

【讨论】:

    【解决方案2】:

    摘要身份验证如何与 JAXRSClientFactory.create 一起使用? 根据 API 的描述,该方法用于获取具有基本身份验证的客户端。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-09-12
      • 1970-01-01
      • 2018-12-01
      • 2021-04-21
      • 1970-01-01
      • 1970-01-01
      • 2020-07-14
      相关资源
      最近更新 更多