org.springframework.ws.client.WebServiceTransportException:[ISS.0084.9001]无效的凭证[401]

时间:2019-01-22 09:31:57

标签: java

我正在尝试通过https使用Soap服务,通过在请求属性中设置keystore来使客户端通过soap ui进行身份验证并在SSL Keysore中工作。但是使用Java WS客户端失败

以下是用于设置keymanagers的示例代码,由于没有使用soap ui,因此我也没有设置信任库。

@Bean
public HttpsUrlConnectionMessageSender messageSender() throws Exception {
          HttpsUrlConnectionMessageSender messageSender = new HttpsUrlConnectionMessageSender();

          messageSender.setKeyManagers(keyManagersFactoryBean().getObject());
          messageSender.setHostnameVerifier(new HostnameVerifier() {
                  @Override
                  public boolean verify(String arg0, SSLSession arg1) {
                        return true;
                  }
            });
          return messageSender;
        }

遇到类似问题的人可以帮助我吗

1 个答案:

答案 0 :(得分:0)

我已经解决了这个问题。

集成服务器中公开的Web服务已配置为使用证书对客户端进行身份验证,IS颁发的公共密钥与我持有的私钥相比具有不同的序列号,因此服务器可以识别客户并提供无效的凭据。