Il y a quelques semaines, j’ai découvert Paris JUG, un groupe d’utilisateurs JAVA basé sur la région parisienne. Comme ils donnaient gratuitement une conférence sur OSGI, sujet qui m’intéresse, j’y suis allé mardi dernier.
Voici divers notes que j’ai prises là-bas :
Evênements à venir dans le groupe :
Février 2009 : C’est le premier anniversaire du groupe. A cette occasion, il y aura des quickies (présentations de 15 minutes)
Appel à bloggers (j’ai demandé à ajouter mon blog et j’attend la réponse)
Il est possible d’éviter les collisions entre différentes versions d’une même librairie en les repackagant (changer le nom des packages) : c’est ce qui a été fait avec tomcat qui inclue sa propre version de commons-dbcp (voir référence)
deviendra probablement le futur standard OSGI car il semble bien accueilli par la communauté JAVA
est en cours de normalisation de ses principales idées avec la RFC 124. Celle-ci semble menacer la notion de «declarative service » (OSGI v4), qui est une surcouche à OSGI visant à déclarer les services importés et exportés par un bundle.
OSGI et les applications java :
Apache geronimo : les jars sont OSGIfiés mais ne sont pas dans un conteneur OSGI
Class.forName : à éviter d’utiliser dans OSGI autant que possible. Voir la discussion à ce sujet.
Le ServiceTracker OSGI peut voir plusieurs implémentations d’un service (c’est à dire d’une interface JAVA)
Problème : Comment ajouter une dépendance dynamiquement ? Solution: on attache le « bundle fragment » en ajoutant « Bundle-Host: bundle_name» dans son manifest
Notes divers :
Le fichier manifest est limité à 76 colonnes (étrange limite …)
Feature eclipse : c’est un ensemble de plugins, par exemple un domaine fonctionnel dans une application d’entreprise