有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java从WSDL生成客户端存根

我开始一个新的项目与商业供应商。我需要在我们的应用程序中编写一个集成模块来使用商业供应商的web服务。因此,WSDL不是由我们控制的

我认为一般的方法是“契约优先”开发并从WSDL文件生成存根。我想知道有什么技术可以做到这一点?我真的想要最简单的方法。我们广泛使用Maven 3.0.3和Spring 3.0.5。我可以使用SpringWebServiceTemplate吗

如果问题不清楚或需要更多细节,请告诉我

谢谢, 塔帕斯维


共 (3) 个答案

  1. # 1 楼答案

    JAX-WS包含在标准Java6发行版中,使用起来非常简单

    在JDK中用wsimport生成存根(记住启用尽可能多的警告,因为您想知道任何可能导致问题的信息)

  2. # 2 楼答案

    可以使用maven pluginJAX-WS生成java存根。然后可以使用spring中的存根将它们公开为Web服务。幸运的是,这很简单:)

    只是一个建议,不要每次构建项目时都重新生成存根,因为(显然)您将无法向存根添加任何代码,这有时非常有用。我很久以前就犯了这个错误,这是非常痛苦的,因为我必须把代码放在不属于它的地方。在过去几年中,我使用maven概要文件按需生成存根,然后“手动”合并它们以添加额外的代码。当然,这只有在WSDL不经常更改的情况下才可行

  3. # 3 楼答案

    我使用了axis,最简单的方法是运行实用程序wsdl2java,并将Web服务的位置与?wdsl选项

    我知道现在很多IDE都允许从内部生成存根。MyeclipseIDE可以选择接收WSDL,intelliJ也可以。我认为更安全的方法是使用wsdl。如果您使用的是jax ws,也可以尝试

    wsimport-keep-verbose位置到wsdl