簡體   English   中英

OSGi SOAP web 服務客戶端

[英]OSGi SOAP web service client

我正在嘗試從 OSGi 獲取 web 服務客戶端,我使用 Felix 作為我的容器。

到目前為止,我已經嘗試使用 Apache CXF。 這不適用於我的 web 服務,因為它是 RPC/編碼的,並且在我嘗試生成存根時不受支持。 我使用 apache Axis 來生成我的存根,現在我在我的包中遇到了與依賴項有關的問題。 當我的包被部署時,我得到了 apache 包的依賴項。

我正在使用 maven 進行構建,並使用帶有 bundleall 目標的 maven-bundle-plugin 來獲取依賴包,但仍然遇到包依賴項的問題。 我真的很想使用 osgi,因為通過 bundles 的可插拔特性正是我所需要的,但是我花了很多時間來追蹤 bundle 依賴項。

是否有使用 OSGi 的 SOAP web 服務的明確示例,包括如何解決依賴關系?

為了讓您的生活更輕松,您可能想嘗試使用 fuse esb (apache servicemix) 或 karaf。 Felix 是一個最小的 OSGi 容器,而 Karaf 是 Felix,已經部署了許多最重要的包。 Fuse(也稱為 servicemix)是具有更多捆綁包的 karaf。 Fuse 帶有 cxf,所以你不必弄亂它。

如果您真的更喜歡使用 felix,請發布您的 maven 包插件配置以及在 felix 中運行的包的列表。 我在 Felix/Karaf 中使用 CXF 來服務 JAX-RS Web 服務已經有一段時間了,它是一個非常強大的解決方案。

maven-bundle-plugin 的 bundleall 目標將為您的所有依賴項生成捆綁包。 但是,它不會顯示為解決依賴項而必須安裝它們的順序。 一個在處理依賴關系方面做得很好的 OSGi 實現是來自 Eclipse Foundation 的 Virgo Web 服務器 使用 Virgo,您可以簡單地將 bundleall 目標生成的所有包直接復制到 repository/usr 文件夾中,將您的服務放入pickup文件夾中,運行時將為您處理依賴項解析。 我過去成功地使用了這個過程。

在相關說明中,除非您有一些不常見的依賴項,否則您應該考慮從SrpingSource Enterprise Bundle Repository添加依賴項。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM