我想從OSGi獲得一個Web服務客戶端,我使用Felix作爲我的容器。OSGi SOAP Web服務客戶端
到目前爲止,我嘗試過使用Apache CXF。這不適用於我的Web服務,因爲它是RPC /編碼的,當我嘗試生成存根時不受支持。我使用Apache Axis生成我的存根,現在我遇到了捆綁中的相關問題。當我的bundle被部署時,我得到了依賴關係w /依賴於apache包。
我對我的構建使用了maven,並且使用了包裝目標的maven-bundle-plugin獲取依賴包,但仍遇到包依賴關係的問題。我真的很想使用osgi,因爲通過捆綁包的可插入特性正是我所需要的,但是我花了很多時間來追逐捆綁包依賴關係。
是否有任何清楚的OSGi SOAP Web服務消耗示例,包括如何解決依賴關係?
感謝您的信息,我已經嘗試了很多事情,並記得我實際上不得不使用axis來生成我的存根,因爲我使用的wsdls是RPC /編碼。所以我遇到問題解決Apache周圍的捆綁。我正在嘗試解決的當前捆綁軟件包是org.apache.axiom.om – broschb
ok,我已經轉移到karaf,並且工作情況稍好一些。我實際上可以安裝我的軟件包。但是,當我真的嘗試調用我的bundle激活器中的webservice調用來測試時,我得到noClassDefFoundError。下面是堆棧跟蹤,但是有沒有辦法查看如何爲bundle加載類路徑?或者什麼是最好的方法來跟蹤這個呢?我有一個捆綁包中可用的類,但它沒有正確加載。 – broschb
堆棧跟蹤 java.lang.NoClassDefFoundError:的javax/XML /流/ util的/ StreamReaderDelegate \t在java.lang.ClassLoader.defineClass1(本機方法) 引起:拋出java.lang.ClassNotFoundException:javax.xml.stream。 util.StreamReaderDelegate找不到org.apache.ws.commons.axiom.axiom-api [138] \t at org.apache.felix.framework.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:787) – broschb