Difference between revisions of "Tutorial OSGi avec Apache Felix - Partie 1"

From air
Jump to navigation Jump to search
Line 115: Line 115:
   
 
=Deployez et lancez la Web console via l'OBR=
 
=Deployez et lancez la Web console via l'OBR=
  +
Qu'est que l'OBR ([[OSGi Bundle Repository]]) ?
L'OBR (Bundle Repository [http://www.osgi.org/download/rfc-0112_BundleRepository.pdf 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'' .
 
   
 
<pre>
 
<pre>

Revision as of 09:30, 30 December 2012

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 <OBR' bundle Id>
frameworklevel
bundlelevel -s 2 <OBR' bundle Id>
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

Qu'est que l'OBR (OSGi Bundle Repository) ?

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)