[英]Interfacing a hybrid/web client application with existing remote web services described by a set of WSDL
簡而言之這個問題
我必須集成一個可能基於 Ionic 的移動混合應用程序,並且必須(間接)使用許多 SOAP Web 服務。 我希望移動應用程序 Typescript 客戶端了解由描述 Web 服務的 XSD 和 WSDL 文件定義的 bean。
一些額外的解釋
在以下說明中,我將參考解決方案中的以下對象:
以下限制生效:
假設 Web 服務 [C] 使用的一些請求和響應涉及以下 Java 對象
public class MyElement {
private ElementColor color;
}
其中 ElementColor 是一個 Java 枚舉,例如
public enum ElementColor {
RED,
GREEN,
BLUE,
}
這些 Java 對象在 WSDL 和 XSD 文件中定義,因此我們可以構建一個 JAR 文件,將其導入服務器端應用程序 [B],因此我們的服務器端應用程序 [B] 將知道可能的值“顏色”屬性可以在 MyElement 類中使用。 都好。
我的問題是 Typescript 移動客戶端 [A] 不導入 JAR 文件(顯然),因此當客戶端開發人員必須編寫請求或解析涉及 MyElement 對象的響應時,他要么
第二個選項更簡潔,但仍然沒有與 WSDL 和 XSD 文件中定義的實際模型緊密相關,即客戶端開發人員仍然可以在他的 Typescript 枚舉中添加一個“黃色”值並將其發送到后端。
我想在我的 Typescript 代碼庫中自動導入/繼承由 WSDL 和 XSD 文件定義的模型,或者從這些相同的 WSDL 和 XSD 文件生成的 Java 類的 Typescript 映射。 請注意,在運行時檢索這些對象是不夠的(我可以編寫一個轉儲它們的服務),因為客戶端開發人員在開發時仍然無法看到它們。
預先感謝您的幫助。
到目前為止,我發現解決這個問題的最佳方法是利用類似 typescript generator plugin 的東西,它將 Java 類轉換為 Typescript 類。
為了將 WSDL 和 XSD 文件轉換為 Java 代碼,我已經有了一個使用 cxf codegen 插件的 Maven pom,我只需要將 typescript 生成器插件執行添加到進程中,以便將 Java 文件依次轉換為 Typescript 文件. 然后,我可以在我的混合應用程序項目中導入 Typescript 定義文件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.