Tutorial OSGi avec Apache Felix - Partie 1

Revenir au sommaire

=Installation et configuration= Telechargez la derniËre distribution de Felix depuis http://felix.apache.org/site/downloads.cgi

DÈzippez la distribution dans le repertoire du TP

Configurez les variables JAVA_HOME et PATH

set FELIX_VER=4.0.2 set FELIX_HOME=felix-framework-%FELIX_VER% set JAVA_HOME=c:\Progra~1\Java\jre6 set PATH=%JAVA_HOME%\bin;%PATH% java -version

creez les repertoires dans %FELIX_HOME% mkdir %FELIX_HOME%\load mkdir %FELIX_HOME%\repository

copy repository\*.* %FELIX_HOME%\repository copy run.bat %FELIX_HOME%

le fichier run.bat permet de lancer Felix avec le proxy HTTP configurÈ avec celui de l'UJF (www-cache.ujf-grenoble.fr:3128)

Positionnez cd %FELIX_HOME%

=Lancement de Felix= run.bat

=PremiËres commandes= Depuis le shell Gogo de Felix help lb headers inspect capability osgi.wiring.package 0 inspect requirement osgi.wiring.package 0 inspect capability service 0 inspect requirement service 0

inspect c osgi.wiring.package 1 inspect r osgi.wiring.package 1 inspect c service 1 inspect r service 1

obr:deploy -start "Apache Felix Log Service" help log log debug log info log warn log error

=Deploiement de bundles= cd file:./repository/ install org.apache.felix.sandbox.mbean.shell.felix-0.3.0.jar lb start 5 inspect c osgi.wiring.package 5 inspect r osgi.wiring.package 5 inspect c service 5 inspect r service 5

update 5 log

install http://repo1.maven.org/maven2/org/apache/felix/org.apache.felix.http.jetty/1.0.1/org.apache.felix.http.jetty-1.0.1.jar log 1 lb start 6 uninstall 6

que se passe t'il et pourquoi ?

=Changement du niveau d'execution= lb help bundlelevel bundlelevel  frameworklevel bundlelevel -s 2  log obr:list

que s'est il passÈ ?

frameworklevel 2 log lb obr:list

que s'est il passÈ ?

=Deployez et lancez la Web console via l'OBR= L'OBR (Bundle Repository RFC 0112) est un service de déploiement d'un bundle OSGi et de ses dépendances transitives. Ce service calcule le graphe des dépendances (qui peut être incomplet) à partir d'un ou de plusieurs index sur des dépôts (repository) locaux ou distants de bundles. Le dépôt des releases d'Apache Felix est http://felix.apache.org/obr/releases.xml. Le dépôt local des bundles contruits (ie mvn install) avec Maven est file:~/.m2/repository/repository.xml.

obr:help obr:list obr:info "Apache Felix Web Management Console" obr:deploy -s "Apache Felix Web Management Console" lb

obr:deploy -s "Apache Felix Web Management Console" "Apache Felix Web Console Event Plugin" "Apache Felix Web Console Memory Usage Plugin" "Apache Felix Web Console Service Diagnostics Plugin" "Apache Felix Web Console UPnP Plugin" lb

Combien de bundles ont ÈtÈ dÈployÈs (installÈs et dÈmarrÈs) ?

naviguez http://localhost:8080/system/console depuis votre browser (username et password : admin et admin)

Deployez File Install soit depuis la web console onglet "OSGi repository" soit avec la commande obr:deploy -start "Apache Felix File Install"

=FileInstall= Deployez des bundles via FileInstall en copiant les jarfiles des bundles du rÈpertoires .\repertoire vers .\load depuis un cmd DOS copy .\repository\org.apache.felix.examples.managedservice-0.1.0-SNAPSHOT.jar .\load Que s'est il passÈ ? (faire lb puis log 4)

del .\load\org.apache.felix.examples.managedservice-0.1.0-SNAPSHOT.jar Que s'est il passÈ ? (faire lb puis log 4)