【问题标题】:Jax-ws customize generated WSDLJax-ws 自定义生成的 WSDL
【发布时间】:2011-12-22 10:27:14
【问题描述】:

我需要更改 JAX-WS 生成的 WSDL,因为有一个 soap:address 错误(contextRoot 由于应用程序服务器的 WebService 重新映射,它不正确)。 我阅读了 WSDLGeneratorExtension 系统,但我不能使用它,我在 /META-INF/services 下放置了一个 com.sun.xml.ws.api.wsdl.writer.WSDLGeneratorExtension 文件,其中包含我的实现的类名,但是它永远不会被调用。

我怎样才能让它工作?或者我可以按照另一种方式来更正生成的 WSDL 的 soap:address 位置吗?

谢谢!

【问题讨论】:

    标签: web-services wsdl jax-ws


    【解决方案1】:

    通常的做法是不要在 WSDL 中使用(甚至包含)实际的服务 URL(除非它是某种应该是“众所周知的”公共服务)。原因是运行相同服务的不同环境会有不同的 URL,例如。

    作为 WS 客户端初始化的一部分,您可以提供不同的 URL(通常来自某种配置文件)。因此,您可能不应该考虑在 WSDL 中修复 URL,而是在客户端初始化中传递正确的 URL。

    【讨论】:

    • 感谢您的回答...问题是 JAX-WS 会自动生成带有 soap:address 的 WSDL。而且我不知道如何预防。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-15
    相关资源
    最近更新 更多