Try   HackMD

搭建 apache felix web console

tags: OSGI Felix Webconsole

安裝felix

http://felix.apache.org/downloads.cgi
下載 felix framework

本此使用 felix-framework-6.0.2
下載完成後解壓縮到指定目錄
透過cli到路徑下 執行felix (必須要到指定路徑下,不然會無法執行)

$ java -jar bin/felix.jar

成功啟動後會看到

$ java -jar bin/felix.jar 
____________________________
Welcome to Apache Felix Gogo

安裝web console(all in one)

接下來在felix中安裝 web console
https://felix.apache.org/downloads.cgi
複製url路徑並且install

g! install http://apache.stu.edu.tw//felix/org.apache.felix.webconsole-4.3.12-all.jar

然後啟動bundle,start時會報錯正常

org.osgi.framework.BundleException: Unable to resolve org.apache.felix.webconsole [10](R 10.0): missing requirement [org.apache.felix.webconsole [10](R 10.0)] osgi.wiring.package; (&(osgi.wiring.package=javax.servlet)(version>=2.4.0)(!(version>=4.0.0))) Unresolved requirements: [[org.apache.felix.webconsole [10](R 10.0)] osgi.wiring.package; (&(osgi.wiring.package=javax.servlet)(version>=2.4.0)(!(version>=4.0.0)))]

因為缺少一些http server的環境
所以再安裝web console需要的額外三個bundle

  1. HTTP Servlet 2.6 + 3.0 API v1.1.2 (felix已經幫我們打包好了)
  2. HTTP Service Base v4.0.6
  3. HTTP Service Jetty v4.0.8
g! install http://apache.stu.edu.tw//felix/org.apache.felix.http.servlet-api-1.1.2.jar
g! install http://apache.stu.edu.tw//felix/org.apache.felix.http.base-4.0.6.jar
g! install http://apache.stu.edu.tw//felix/org.apache.felix.http.jetty-4.0.8.jar

啟動後可在預設 http://localhost:8080/system/console/bundles
登入webconsole 登入帳密 admin / admin

設定webconsole

預設值port在8080 登入密碼:admin / admin
到 felix > conf > config.properties 修改

org.osgi.service.http.port=8888  //http port
felix.webconsole.password=25153738 //密碼設定

設定完後要重新啟動felix