[英]Example using Jersey (REST resource), OSGi (Apache Felix), and Maven (build and deploy)?
我好像在這里苦苦掙扎。 我想做的(按此順序)是:
1)使用Jersey應用程序和帶注釋的資源構建RESTful資源(這不是問題)。
2)將該包打包,安裝並啟動到Felix OSGi容器中,作為HTTP服務,包括依賴項。
3)在OSGi容器中打包,安裝和啟動WAR,可以將#2作為依賴項。
我希望能夠使用Maven完成所有這些工作。
我似乎無法找到一個甚至是個別步驟的工作示例,特別是涉及Maven,這項工作更不用說這些步驟的組合了。 我曾嘗試在網絡上拼湊各種不同的q&a,並取得了不同程度的成功,但還沒有成為端到端的工作實例。
任何指針將不勝感激......
我沒有針對Jersey的示例,但我有一個使用Apache Karaf (使用Felix)的CXF教程 。 它顯示了如何創建Rest服務並使用maven構建它。 使用Apache Karaf,您可以直接從maven倉庫部署捆綁包。 移動到Jersey可能只是意味着交換lib並使用另一個藍圖配置初始化其余服務。
Apache Karaf也允許部署戰爭和wabs,但我還沒有測試過它們。
Apache Stanbol完成大部分或全部(不確定戰爭包裝是否包含在內)以實現其RESTful服務。
您將不得不深入挖掘其代碼庫,但在那里搜索Jax-RS注釋應該指向正確的位置。
我也正在努力完成你正在嘗試做的事情。 到目前為止,我似乎非常接近,但唉不是那里,這就是我一直在做的事情:
我嘗試了這個組合,並使其運行 -
1-模塊化規范 - > OSGi規范
2- OSGi實現 - > Apache Felix 4.4.0
3- OSGi Runtime - > Apache Karaf 3.0.3
4- REST的軟件架構規范 - JAX-RS
5- JAX-RX實現 - > Apache CXF - 2.7.5
你可以參考這個很好的教程 - http://java.dzone.com/articles/building-cxf-rest-service-osgi
現在,我也計划從CXF搬到澤西島,因為澤西島是JAX-RS的輕型等待參考實施。 現在我計划將Jersey與Apache Felix / Apache Karaf一起使用。 您可以在Karaf中安裝Jersey並將Jersey Rest Web Services部署為Bundle。 你可以參考這個教程 - https://vzurczak.wordpress.com/2014/09/30/web-applications-with-osgi-working-with-jersey/
這是github上的一個很好的例子: https : //github.com/ddragosd/jax-rs-on-karaf
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.