【问题标题】:Implement WS-Policy in a JAX-WS Web Service在 JAX-WS Web 服务中实现 WS-Policy
【发布时间】:2013-09-15 23:14:53
【问题描述】:

我正在使用 JAX-WS 用 Ja​​va 开发 SOAP Web 服务。我正在使用 Eclipse Juno 和 Weblogic 12c。 Web 服务正在 EJB 项目中开发。我正在使用自上而下的方法:从我拥有的 WSDL 中,我使用 JDK 的 wsimport 工具(通过命令行)生成所有 Java 类,我将它们导入到项目中,然后我为 SEI 提供了一个实现。

WSDL 有一个带有 wsp:Policy 标记的 WS-Policy 规范,但是从 wsimport 生成的代码对此没有任何信息/注释。因此,我想我必须自己写。

从我所做的搜索来看,我似乎要么使用一些 Weblogic 注释,要么使用一些 CXF/Axis/Metro 功能。这是真的?我不能使用 JAX-WS 中的任何东西吗?我读到 CXF/Axis/Metro 都是 JAX-WS 的实现,但我不知道是否使用其中之一,我想我正在使用 JAX-WS 参考实现,但我不知道如果这是真的。

我还希望实现独立于任何应用程序服务器(在这种情况下为 Weblogic)。如果我必须使用 CXF/Axis/Metro,如何将它们的功能添加到我的 EJB 项目中?

【问题讨论】:

    标签: java web-services wsdl jax-ws wsimport


    【解决方案1】:

    首先,您可以在项目中使用 Metro、Axis 或任何其他第三方库来生成您的客户端代码。但是,如果您不想使用第三方库,您可以自己生成所需的 wsse 标头。 以下链接描述了如何生成所需的标头以调用 wsse 安全 Web 服务,您只需实现自己的 SOAPHandler

    http://www.javadb.com/using-a-message-handler-to-alter-the-soap-header-in-a-web-service-client/

    【讨论】:

    • 这是一个老问题,我不再从事那个项目,所以我不记得了,也无法验证您的答案是否正确,但我赞成它,因为我找到了有用。
    猜你喜欢
    • 1970-01-01
    • 2010-10-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多