【问题标题】:Create SOAP webservice starting from WSDL using Groovy?使用 Groovy 从 WSDL 创建 SOAP Web 服务?
【发布时间】:2012-03-03 10:05:57
【问题描述】:

我们有一个 wsdl,我们需要为其创建一个服务器实现。在之前的项目中,我们使用 Apache CXF 中的 wsdl2java,但现在我们希望将其全部保存在 Groovy 中。有没有一种方法可以让我们创建一个服务器实现并将其全部保存在 Groovy 中?或者还有其他方法可以实现吗?

最终目标是我们可以将此实现挂钩到一个 Grails 应用程序中,该应用程序将作为客户端的服务器。

【问题讨论】:

    标签: web-services grails soap groovy


    【解决方案1】:

    是的。您可以使用plugincxf directly

    如果您按照该教程进行操作,您始终可以使用 wsdl2java 并将生成的文件重命名为 .groovy 文件并将语法更新为更groovified。他们仍然会像往常一样工作。此外,您可能知道也可能不知道,您不必像教程中所说的那样将 jars 直接复制到您的 lib 目录,您可以使用普通的 Grails 依赖管理。

    【讨论】:

    • 感谢您的回复!我不确定首选的方式是什么!有没有可以做的推荐?使用插件还是手动操作?在我的案例中,已经提供了 wsdl 合同。所以我的猜测是直接使用它会是首选方式。对此有什么想法吗?
    • 我尝试使用 cxf 直接方式,但是当我尝试运行我的项目时,它给了我一个错误:ERROR context.GrailsContextLoader - Error execution bootstraps: Error creating bean with name 'org.apache. cxf.frontend.spring.ServerFactoryBeanDefinitionParser$SpringServerFactoryBean--230470630':调用init方法失败;嵌套异常是 java.lang.IllegalArgumentException:创建 QName 时本地部分不能为“null”
    【解决方案2】:

    我认为更适合您的是Groovy WS LiteSpring-ws 也是一个选项,它是一个功能强大的库,并且文档记录得当,因为 grails 最终是春天,它可以很好地与 grails 集成。无耻插件:这是我创建的web service integration testing tool,它使用 groovy 和 spring-ws。您可以查看代码以获取“工作示例”。

    【讨论】:

    • Groovy WS Lite 是否也能够提供 Web 服务?我检查了 GitHub,但它只提到了客户端。我会很高兴有 1 个堆栈来提供和使用 Web 服务。 Spring WS 似乎还没有为 Grails 2 做好准备.. :( 或者我错过了什么?顺便感谢您的建议!
    • 我在java中使用过spring-ws,只有groovy项目没有Grails。 spring-ws 的插件页面似乎已经过时grails.org/plugin/springws。所以,我想它至少目前可能无法满足您的要求。如果你沿着这条路走,那么下面的 nabble 条目可能会有所帮助grails.1312388.n4.nabble.com/…
    猜你喜欢
    • 2017-06-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多