java - 如何使用 apache cxf 工件在 SOAP 请求中设置用户名和密码

标签 java soap jax-ws cxf

我对网络服务概念不熟悉。我使用 SOAPUI 中的 Apache cxf 工具生成了提供 WSDL 的 java 工件。但我不确定如何设置 SOAP 请求 header 中的用户名和密码。我可以看到有一个使用用户名和密码等所有参数创建的 AuthenticationInfo 类。

请让我知道如何调用该类或将用户名和密码的值传递到 SOAP 请求的 header 部分。如果我运行包而不设置这些详细信息,我将收到身份验证失败错误。

请帮助我。

谢谢, 哈里

最佳答案

如果您正在讨论按照 UsernameToken profile 在 SOAP header 中传递用户名/密码WS-Security specification中描述,CXF 让您可以使用 WSS4J 拦截器 来实现这一点。

看看以下内容:

  1. CXF - WS-Security
  2. WSS4J Project

在您的客户端中,您需要添加 WSS4JOutInterceptor。

关于java - 如何使用 apache cxf 工件在 SOAP 请求中设置用户名和密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16811349/

相关文章:

java - install4j 无人值守模式下的 ExecuteLauncherAction

asp.net - 在经典 ASP 中利用 SOAP

java - Header 上类型的身份验证具有未定义的属性 {http ://docs. oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd}Id

ruby - 正确构造此 SOAP header 吗?

web-services - 由于异常 : XML reader error: com. ctc.wstx.exc.WstxParsingException:未声明的命名空间前缀 "ws",无法创建 SOAP 消息

java - Java 7 是包含 JAX-WS 实现还是仅包含 API?

java - 令人惊讶的编译错误获取类的数组类

java - Google Fit API,获取每次 Activity 消耗的卡路里

java - jTable添加多行

java - 如何避免 "505: HTTP Version not supported"错误?