是否可以將osgi-equinox引入到現有的java Apache Tomcat項目中? 從我的理解OSGI必須在某種「容器」內運行。我將如何整合它?將Equinox OSGi集成到Apache Tomcat Web應用程序
我還使用Jersey獲取RESTful資源。
是否可以將osgi-equinox引入到現有的java Apache Tomcat項目中? 從我的理解OSGI必須在某種「容器」內運行。我將如何整合它?將Equinox OSGi集成到Apache Tomcat Web應用程序
我還使用Jersey獲取RESTful資源。
你可能想看看這個問題:OSGI runtime inside traditional Java EE server。
在這個橋接模型中,安裝了一個特殊的servlet,Tomcat調用這個servlet來處理請求。 OSGi運行時是從這個servlet中產生的,但是OSGi運行時本身(例如equinox)不知道像HTTP這樣的事情。還安裝了OSGi HTTP服務包,您需要針對此OSGi HTTP服務註冊您的Web應用程序(servlet,jsp,...)以處理傳入的請求。因此,並不是說有一個單獨的「Web服務器」可以說是在它自己的端口上監聽並在它自己的外部Tomcat上管理HTTP。您的里程可能會有所不同,但開銷基本上受限於OSGi HTTP服務在將請求從Tomcat連接器轉發到您的servlet時可能會添加的內容。
如果您無法更改現有的部署模型,則需要此橋接模型。從長遠來看,更好的模型是先安裝OSGi運行時並將Tomcat(或任何其他兼容OSGi的容器)作爲捆綁插入OSGi運行時。
我明白了,這很有趣。那麼你的意思是另一種方式是將OSGI作爲自己的「網絡服務器」來運行?但是,與Apache相比,osgi的服務器性能如何? – drozzy 2010-10-12 23:02:47
是否有可能像Jersey一樣使用OSGi,它檢查帶註釋的類並將請求轉發給給定的url到合適的類? – drozzy 2010-10-14 17:58:39
我不能說,因爲我還沒有和澤西打過很多比賽,但是網頁搜索澤西+ osgi似乎帶來了很多內容。 – sjlee 2010-10-14 19:54:01