我正在尋找動態Web服務客戶端(如DII從JAX-RPC)的解決方案。在運行時從WSDL動態調用Web服務
我需要從WSDL生成一個客戶端。 但是WSDL只在運行時才知道(所以我沒有任何可用的接口)。
我看過JbossESB,JbossWS,JaxWS,JaxRPC,但是我找不到符合這個要求的任何東西。
感謝您的幫助。
我正在尋找動態Web服務客戶端(如DII從JAX-RPC)的解決方案。在運行時從WSDL動態調用Web服務
我需要從WSDL生成一個客戶端。 但是WSDL只在運行時才知道(所以我沒有任何可用的接口)。
我看過JbossESB,JbossWS,JaxWS,JaxRPC,但是我找不到符合這個要求的任何東西。
感謝您的幫助。
找到一個現成解決您的問題並不容易。至少不存在AFAIK。由於與操作的請求和響應相關聯的支持模式類型的內在的,未知的複雜性,所以不可能有這樣的解決方案。然而,把一些正確的工具放在一起,或者使用一些開源框架/庫/工具,你也許能夠實現類似的東西。基本上你需要有一個WSDL4J
的實現,以及像XMLBeans
這樣的模式解析器來實現這個功能。
我想到的工具是SoapUI
。它實現了類似的功能 - 用戶在運行時加載WSDL,然後可以執行操作。該工具的來源也可在LGPL here下修改。您需要剝離和打撈適合您需要的核心功能。或最好的,建立自己的一個:]
請注意,WSIF可以做到這一點,但它需要JDK 1.3使用舊的方法。我需要將其集成到JDK 5中。 – nono 2010-11-12 09:28:46
動態表示我在部署應用程序後假定。如果是這樣,假設你已經生成了客戶端,你將如何使用它? – 2010-11-12 09:47:25