繁体   English   中英

JAXB / xjc生成的异常类不可抛出

[英]JAXB / xjc generated Exception classes are not Throwable

我正在使用jaxb-xjc(在Gradle任务中为2.2.4-1版)从wsdl(用作Web服务客户端)生成Java类。

根据wsdl文档,某些端点可能会抛出自定义异常。

生成的代码看起来不错,除了一个细节:生成的异常类不扩展Throwable(或其他任何将其扩展的类)。 WSDL似乎还可以,因为在这些端点中有一个故障元素(示例):

<wsdl:fault name="IdentityNotFoundException" message="work_v2:IdentityNotFoundException"/>

有没有一种方法可以将xjc配置为使这些自定义Exception类成为“真实的”异常类? 当前的Gradle / xjc任务配置为:

            xjc(destdir: sourcesDir, schema: "src/main/resources/wsdl/workService_v2.wsdl",
                package: "workService.generated") {
            arg(value: "-wsdl")
            produces(dir: sourcesDir, includes: "**/*.java")
        }

找到了解决方法:

我没有使用xjc,而是使用了另一个生成器: wsdl2java

令人惊讶的是,新生成的类现在扩展了Exception类! 用于wsdl2java的Gradle设置根据其Github页面中的示例进行。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM