簡體   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