2011-08-25 27 views
0

在Apache Felix Webconsole中停止軟件包所以我安裝了這些軟件包,可以通過從 http://localhost/path/to/bundles的gui訪問。這裏駐留的用戶界面可以搜索捆綁包並手動關閉它。我希望能夠在代碼中做到這一點。如何使用代碼

我正在通過org.apache.felix.webconsole-3.1.8.jar查看示例。所以我想我的問題是:

1)如何連接到Web控制檯,這樣我可以檢索捆綁

2)我如何尋找特定的軟件包列表?通過symbolicName?

任何幫助表示讚賞。提前致謝。

回答

1

假設你的代碼運行在同一個OSGi容器中,沒有理由爲此使用webconsole。你可以使用像Spring-DM或Blueprint之類的東西來獲得對BundleContext的引用,然後使用getBundle方法獲取你想要停止的包的引用。您可以撥打Bundle.stop()

+1

基本上正確,但更容易使用「BundleActivator」來獲得對「BundleContext」的引用。 –

+0

這通常是正確的,但是,如果您已經使用Spring-DM或Blueprint,那麼在XML文件中添加一行額外代碼要比編寫更多代碼容易得多。話雖如此,感謝提醒,我完全忘記了這一點! – Jon7