我需要創建一個實現Java ResultSet接口的對象從一個通用的SOAP請求中獲取數據(我需要使用這些SOAP結果集和JDBC結果在更高級別上工作套)。從通用的SOAP請求實現ResultSet接口
正如我在標題中寫到的,SOAP請求可以是通用的:它依賴於傳遞的參數並可以使用不同的Web服務,所以我只知道在運行時wsdl和SOAP服務將要傳遞給我的結構。
我一直試圖在最後幾天如何做到這一點要弄清楚,我已經推出了一些想法:
1- SOAP主體轉換爲XML文檔的WebRowSet,即可以解組到WebRowSetImpl類,該類實現WebRowSet接口(擴展ResultSet的接口)。 在這種情況下,我必須從WSDL和SOAP響應文檔開始實時製作海關XSLT。
2-創建Java從SOAP響應對象,然後試圖映射和填充通用存根JDBC結果與Java內的數據集對象
3-從SOAP響應的所有數據存儲到(歸一化或未規範化)數據庫,然後使用任何JDBC驅動程序從數據庫中讀取數據。
你認爲哪種方式最好? 哪個最簡單的方法去?
我僅暴露更大平臺的一部分,完整的流程爲: 1 - 使用公共從JDBC連接器/皁服務 2-提取數據變換臨時數據接口(因爲這個,我想到了結果集) 3-將轉換的數據持久存儲在數據庫中 – alessiop86
對我來說,仍然聽起來過於寬泛和卑鄙。沒有合約。真正的服務擁有其數據並將其用於自己的狹隘目的。沒有客戶應該提取一堆東西,做事情,然後放回去。隱藏服務內的所有內容,不要讓抽象泄漏出去。你會後悔這樣的設計。 – duffymo
我不會放回我用jdbc連接器或soap獲得的數據,我只是從各種來源提取它們,從我的平臺中定義組合/轉換邏輯,然後將組合/轉換的結果存儲在我的平臺中。這是一種ETL – alessiop86