2010-11-12 65 views
1

我正在尋找動態Web服務客戶端(如DII從JAX-RPC)的解決方案。在運行時從WSDL動態調用Web服務

我需要從WSDL生成一個客戶端。 但是WSDL只在運行時才知道(所以我沒有任何可用的接口)。

我看過JbossESB,JbossWS,JaxWS,JaxRPC,但是我找不到符合這個要求的任何東西。

感謝您的幫助。

+0

請注意,WSIF可以做到這一點,但它需要JDK 1.3使用舊的方法。我需要將其集成到JDK 5中。 – nono 2010-11-12 09:28:46

+0

動態表示我在部署應用程序後假定。如果是這樣,假設你已經生成了客戶端,你將如何使用它? – 2010-11-12 09:47:25

回答

-1

找到一個現成解決您的問題並不容易。至少不存在AFAIK。由於與操作的請求和響應相關聯的支持模式類型的內在的,未知的複雜性,所以不可能有這樣的解決方案。然而,把一些正確的工具放在一起,或者使用一些開源框架/庫/工具,你也許能夠實現類似的東西。基本上你需要有一個WSDL4J的實現,以及像XMLBeans這樣的模式解析器來實現這個功能。

我想到的工具是SoapUI。它實現了類似的功能 - 用戶在運行時加載WSDL,然後可以執行操作。該工具的來源也可在LGPL here下修改。您需要剝離和打撈適合您需要的核心功能。或最好的,建立自己的一個:]

1

看來,這可能與CXF和一些Java反射。

jax-ws-dynamic-dispatch-with-cxf

我個人尋找一個解決方案+動態服務器模型爲好。

祝你好運。