提问人:Menyten 提问时间:11/3/2023 最后编辑:Menyten 更新时间:11/5/2023 访问量:63
由于 wsdl 无效,从 wsdl 文件生成代码时出错
Error generating code from wsdl file due to invalid wsdl
问:
我目前正在工作,遇到从 wsdl 文件生成 SOAP api 客户端代码的问题。有问题的文件可在此处向公众提供。我特别希望使用的那个称为 GetListingInteraction_1.0_rivtabp20.wsdl。我知道它依赖于其他三个 xsd 文件crm_carelisting_1_0.xsd、GetListing_1_0.xsd 和 ws-addressing-1.0.xsd。
我们将 kotlin 与 java 11 一起使用。
以下是 wsdl2java 的 gradle.build 配置文件的外观:
plugins {
id 'com.yupzip.wsdl2java' version "$wsdl2java_version"
}
wsdl2java {
wsdlsToGenerate = [
[
'-p', 'generated.com.test.microservice.test.resources.models.listing.getlistinginteraction',
'-wsdlLocation', 'classpath:wsdl/GetListingInteraction_1.0_rivtabp20.wsdl', "$projectDir/src/main/resources/wsdl/GetListingInteraction_1.0_rivtabp20.wsdl"
],
]
wsdlDir = file("$projectDir/src/main/resources/wsdl")
cxfVersion = "3.5.5"
cxfPluginVersion = "3.5.5"
}
我们得到的错误。
无法在方法 [getListing] 中为部件 [logicalAddress] 创建 java 参数 - 此 wsdl 无效,请使用 wsdlvalidator 工具验证此 wsdl
我已经浏览了 wsdl 文件、验证、格式化等,但对我来说一切看起来都还不错。总的来说,我对 SOAP 和 WSDL 不是很有经验,我有点不知所措。我们还有另一个服务,它能够在系统的另一部分为另一个 SOAP API 生成具有完全相同设置的客户端代码。使用相同版本的 wsdl2java 依赖项以及配置,只是 wsdlsToGenerate 中的其他 wsdl 文件。
有人会好心地尝试自己复制它,看看你是否遇到同样的问题吗?如果您找到解决方案,我将不胜感激。
如果您需要更多信息,请告诉我。
我在这里的一个小项目中复制了它 https://github.com/Menyten/wsdltest
答:
我想通了这个问题。显然,我需要一些额外的论据才能让这一代人发挥作用。我查看了原始项目的 pom.xml 文件,并在相关文件的 wsdlOptions 下看到了额外的参数
评论