为多个WSDL文件生成客户端,并通过SpringGradle将其放在不同的包中

为多个WSDL文件生成客户端,并通过SpringGradle将其放在不同的包中,spring,web-services,soap,wsdl,Spring,Web Services,Soap,Wsdl,我想使用SpringGradle从WSDL文件生成java类。我已经为1个wsdl文件做了准备。但未来可能会有200个左右的wsdl。是否有更好的方法分别生成wsdl并将java类放在不同的包中。使用WSDL文件名命名每个包?请在下面找到我的身材。通过传递WSDL名称、包名称,是否可以使Ant任务成为公共任务并分别为每个WSDL文件调用 // tag::wsdl[] task genJaxb { ext.sourcesDir = "${buildDir}/generated-source

我想使用SpringGradle从WSDL文件生成java类。我已经为1个wsdl文件做了准备。但未来可能会有200个左右的wsdl。是否有更好的方法分别生成wsdl并将java类放在不同的包中。使用WSDL文件名命名每个包?请在下面找到我的身材。通过传递WSDL名称、包名称,是否可以使Ant任务成为公共任务并分别为每个WSDL文件调用

// tag::wsdl[]
task genJaxb {
    ext.sourcesDir = "${buildDir}/generated-sources/jaxb"
    ext.classesDir = "${buildDir}/classes/jaxb"
    //ext.schema = "http://wsf.cdyne.com/WeatherWS/Weather.asmx?wsdl"
    ext.schema = "${projectDir}/src/main/resources/wsdl.test1"

    outputs.dir classesDir

    doLast() {
        project.ant {
            taskdef name: "xjc", classname: "com.sun.tools.xjc.XJCTask",
                    classpath: configurations.jaxb.asPath
            mkdir(dir: sourcesDir)
            mkdir(dir: classesDir)

            xjc(destdir: sourcesDir, 
                    schema: schema,
                    package: "wsdl.test1") {                
                arg(value: "-wsdl")
                produces(dir: sourcesDir, includes: "**/*.java")
            }

            javac(destdir: classesDir, source: 1.6, target: 1.6, debug: true,
                    debugLevel: "lines,vars,source",
                    classpath: configurations.jaxb.asPath) {
                src(path: sourcesDir)
                include(name: "**/*.java")
                include(name: "*.java")
            }

            copy(todir: classesDir) {
                fileset(dir: sourcesDir, erroronmissingdir: false) {
                    exclude(name: "**/*.java")
                }
            }
        }
    }
}
// end::wsdl[]

我使用从多个wsdl/xsd文件生成Java类。工作起来很有魅力。

我用来从多个wsdl/xsd文件生成Java类。很有魅力。

看起来不错。非常感谢。只是一个小小的请求。。我可以使用这个插件生成java类,但是我无法调用服务并读取响应。我找不到这方面的任何示例代码。。我所做的一切都不管用。。你有任何关于这个的指针或代码片段吗?我用的是SpringBoot。您可以使用以下教程:。生成类(您已经这样做了),创建一个带有配置类的web服务客户端。是的,我已经这样做了,并且能够连接web服务并获取数据。但是我面临着“缺少xmlrootelement注释jaxb”的问题,我必须实现编组逻辑,正如建议的那样,这对于我将要生成的所有wsdl文件来说是一种开销。这就是为什么我想试试别的东西。看起来不错。非常感谢。只是一个小小的请求。。我可以使用这个插件生成java类,但是我无法调用服务并读取响应。我找不到这方面的任何示例代码。。我所做的一切都不管用。。你有任何关于这个的指针或代码片段吗?我用的是SpringBoot。您可以使用以下教程:。生成类(您已经这样做了),创建一个带有配置类的web服务客户端。是的,我已经这样做了,并且能够连接web服务并获取数据。但是我面临着“缺少xmlrootelement注释jaxb”的问题,我必须实现编组逻辑,正如建议的那样,这对于我将要生成的所有wsdl文件来说是一种开销。这就是为什么我想试试别的东西。看起来不错。非常感谢。只是一个小小的请求。。我可以使用这个插件生成java类,但是我无法调用服务并读取响应。我找不到这方面的任何示例代码。。我所做的一切都不管用。。你有任何关于这个的指针或代码片段吗?我用的是SpringBoot。您可以使用以下教程:。生成类(您已经这样做了),创建一个带有配置类的web服务客户端。是的,我已经这样做了,并且能够连接web服务并获取数据。但是我面临着“缺少xmlrootelement注释jaxb”的问题,我必须实现编组逻辑,正如建议的那样,这对于我将要生成的所有wsdl文件来说是一种开销。这就是为什么我想尝试别的东西。