Service de compteur OSGi

Cet exemple explique comment déclarer des services dans le fichier Blueprint d'un bundle, afin de les rendre accessibles pour les autres bundles de l'application. L'application OSGi se compose d'un bundle Web OSGi contenant un servlet qui accède à un service fourni dans un autre projet de bundle. L'application s'exécute dans WebSphere Application Server. Cet exemple constitue une introduction à l'utilisation des outils de développement d'application OSGi.

Conseil : Vous pouvez exécuter cet exemple dans WebSphere Application Server versions 7.0, 8.0 et 8.5.
En savoir plus sur l'installation de WebSphere Application Server version 7.0 : Pour exécuter cet exemple dans WebSphere Application Server version 7.0, vous devez installer Feature Pack for OSGi Applications and Java™ Persistence API 2.0. Pour installer le module de fonctions :
  1. Ouvrez IBM® Installation Manager.
  2. Cliquez sur Installer. La page Installer des packages s'ouvre.
  3. Dans la liste des packages, sélectionnez Environnement de test IBM WebSphere Application Server version 7.0, puis cliquez sur Suivant.
  4. Lisez les contrats de licence. Acceptez ces contrats puis cliquez sur Suivant.
  5. Suivez les instructions prévues dans Installation Manager pour installer WebSphere Application Server version 7.0.
  6. Dans la liste Fonctions, assurez-vous de sélectionner Applications OSGi sous IBM WebSphere Application Server Version 7.0 Feature Pack for OSGi Applications and Java Persistence API 2.0.
En savoir plus sur l'installation de WebSphere Application Server version 8.0 : Pour exécuter cet exemple sur WebSphere Application Server version 8.0, vous devez installer le serveur :
  1. Ouvrez IBM Installation Manager.
  2. Cliquez sur Installer. La page Installer des packages s'ouvre.
  3. Dans la liste des packages, sélectionnez IBM WebSphere Application Server Version 8.0, puis cliquez sur Suivant.
  4. Lisez les contrats de licence. Acceptez ces contrats puis cliquez sur Suivant.
  5. Suivez les instructions d'Installation Manager pour installer WebSphere Application Server version 8.0.
En savoir plus sur l'installation de WebSphere Application Server version 8.5 : Pour exécuter cet exemple sur WebSphere Application Server version 8.5, vous devez installer le serveur :
  1. Ouvrez IBM Installation Manager.
  2. Cliquez sur Installer. La page Installer des packages s'ouvre.
  3. Dans la liste des packages, sélectionnez IBM WebSphere Application Server Version 8.5, puis cliquez sur Suivant.
  4. Lisez les contrats de licence. Acceptez ces contrats puis cliquez sur Suivant.
  5. Suivez les instructions d'Installation Manager pour installer WebSphere Application Server version 8.5.
Pour déployer votre application de compteur OSGi sur un serveur :
  1. Dans l'explorateur d'entreprise, développez CounterWebBundle > CounterWebBundle > Servlets.
  2. Cliquez avec le bouton droit de la souris sur CounterServlet et sélectionnez Exécuter en tant que > Exécuter sur le serveur. La boîte de dialogue Exécuter sur le serveur s'ouvre.
  3. Cliquez sur WebSphere Application Server depuis la liste des serveurs et cliquez sur Terminer.

La chaîne greet.getText()=0 Hello World! est affichée dans le navigateur. A chaque fois que la page est rechargée, la valeur augmente.

Passez dans la vue Console (Fenêtre > Afficher la vue > Console) pour afficher la sortie du serveur. Une sortie réussie affiche la sortie de CounterImpl.init(), GreetImpl.init() et WorldImpl.init(), en fonction des entrées de méthode d'initialisation pour les beans CounterImpl, GreetImpl et WorldImpl dans le fichier Blueprint :
[7/21/10 11:42:18:109 EDT] 0000002f StepStartBLA  A   CWWMH0300I: Démarrage de l'application de niveau métier "WebSphere:blaname=CounterApp".
[7/21/10 11:42:19:421 EDT] 0000002f webapp        I com.ibm.ws.webcontainer.webapp.WebGroupImpl WebGroup SRVE0169I: Chargement du module Web : CounterWebBundle.
[7/21/10 11:42:19:515 EDT] 0000002f WASSessionCor I SessionContextRegistry getSessionContext SESN0176I: Un nouveau contexte de session va être créé pour la clé d'application default_host/CounterWebBundle
[7/21/10 11:42:19:531 EDT] 0000002f webcontainer  I com.ibm.ws.wswebcontainer.VirtualHost addWebApplication SRVE0250I: Module Web CounterWebBundle lié à default_host[*:9080,*:80,*:9443,*:5060,*:5061,*:443].
[7/21/10 11:42:19:593 EDT] 0000002f StepStartBLA  A   CWWMH0196I: L'application de niveau métier "WebSphere:blaname=CounterApp" a été démarrée.
[7/21/10 11:42:19:640 EDT] 0000001d SystemOut     O WorldImpl.init() appelé.
[7/21/10 11:42:19:640 EDT] 00000032 SystemOut     O CounterImpl.init() appelé.
[7/21/10 11:42:19:687 EDT] 00000032 SystemOut     O GreetImpl.init() appelé.
Remarque : Si la sortie de CounterImpl.init(), GreetImpl.init() et WorldImpl.init() ne s'affiche pas dans la console, recherchez dans la sortie d'éventuels messages d'erreur qui seraient survenus au cours du déploiement ou du démarrage de l'application et recherchez dans les fichiers Blueprint d'éventuelles erreurs dans les définitions de service et de bean.
Icône indiquant le type de rubrique Rubrique d'exemple
Dispositions pour les centres de documentation | Commentaires en retour

Icône d'horodatage Dernière mise à jour: May 29, 2014 10:11

Nom de fichier : counterExamples.html