【问题标题】:JAXB / xjc generated Exception classes are not ThrowableJAXB / xjc 生成的异常类不是 Throwable
【发布时间】:2015-04-09 21:45:08
【问题描述】:

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

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

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

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

有没有办法配置 xjc 使这些自定义异常类成为“真正的”异常类?当前 Gradle/xjc 任务配置为:

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

【问题讨论】:

    标签: java gradle jaxb wsdl xjc


    【解决方案1】:

    想出了一个解决方法:

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

    还有惊喜 - 新生成的类现在扩展了 Exception 类!用于 wsdl2java 的 Gradle 设置根据其 Github 页面中的示例。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-11-28
      • 2021-10-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-09-01
      • 2012-09-25
      • 1970-01-01
      相关资源
      最近更新 更多