Développement d'une fonction Liberty pour le profil Liberty
Une fonction Liberty se compose d'un fichier manifeste de fonction et d'un ou de plusieurs bundles OSGi. Les bundles OSGi contiennent des classes et des services qui fournissent une capacité particulière lorsque la fonction est installée sur un serveur de profil Liberty.
Pourquoi et quand exécuter cette tâche
Vous pouvez
développer une fonction Liberty de l'une des façons
suivantes :
- Développez la fonction manuellement : voir Développement manuel d'une fonction Liberty.
- Utilisez WebSphere Application Server Developer Tools (voir Création d'une fonction Liberty à l'aide des outils de développement).
Pour des détails complets sur le développement de fonctions Liberty, voir les sous-rubriques suivantes :
Sous-rubriques
- Développement manuel d'une fonction Liberty
Vous pouvez créer une fonction Liberty manuellement et l'installer dans le profil Liberty. - Création d'une fonction Liberty à l'aide des outils de développement
Vous pouvez utiliser les outils de développement de WebSphere Application Server pour rédiger vos propres fonctions et les installer sur un serveur de profil Liberty existant ou les conditionner en vue de leur distribution à vos utilisateurs. - Développement d'un bundle OSGi avec activation simple
La façon la plus simple et directe de contrôler le cycle de vie de votre code de bundle OSGi consiste à implémenter l'interface org.osgi.framework.BundleActivator dans l'une des classes de votre bundle. Lorsque le serveur démarre et arrête le bundle, les méthodes de démarrage et d'arrêt de l'interface BundleActivator sont appelées. - Composition de fonctions complexes à l'aide des services déclaratifs OSGi
Les fonctions simples peuvent être contrôlées à l'aide de classes d'activateur de bundle et une implémentation directe d'interfaces telles que ManagedService et ServiceTracker. Lorsque les relations entre les bundles deviennent plus complexes, il peut être judicieux d'utiliser des fonctionnalités telles que les services déclaratifs OSGi pour décomposer une fonction en services individuels. Les services déclaratifs (parfois appelés environnement SCR ou Service Component Runtime) permettent la gestion du cycle de vie et de l'injection des services Web. - Configuration avancée
La configuration avancée inclut des informations sur la spécification des descriptions et des valeurs par défaut pour la configuration et les extensions du service des métatypes OSGi. - Spécification d'un noeud final d'application
Vous pouvez mettre à disposition une fonction Liberty sous forme d'applications Web en incluant un ou plusieurs bundles d'application Web (WAB) dans la fonction. Un bundle d'application Web est un bundle OSGi qui comporte un en-tête de manifeste Web-ContextPath. - Utilitaires d'interface SPI Liberty
Le profil Liberty met à disposition des interfaces avec le fournisseur de services (SPI) pour l'exécution de diverses tâches. - Inclusion de fonctions protégés
Vous pouvez inclure une ou plusieurs autres fonctions en les répertoriant dans l'en-tête Subsystem-Content du fichier manifeste de la fonction. Toute fonction qui se trouve dans la même extension de produit que votre propre fonction peut être incluse ; si la fonction incluse se trouve dans une extension de produit différente ou dans le profil Liberty, sa visibilité doit être publique ou protégée. - Localisation des applications OSGi
Vous pouvez utiliser les classes du package org.apache.aries.blueprint pour étendre le modèle de programmation d'application OSGi ; cette interface SPI tierce est mise à disposition via la fonction de serveur blueprint-1.0. Vous devez accéder aux bundles d'application OSGi afin d'appliquer vos extensions. Dans le profil Liberty, les applications OSGi s'exécutent en tant que sous-systèmes. Pour localiser une application OSGi, vous pouvez créer un objet ServiceTracker dans une fonction utilisateur. - Développement avec l'espace de nom JNDI par défaut dans une fonction Liberty
Vous pouvez rendre un objet disponible dans l'espace de nom par défaut Java™ Naming and Directory Interface (JNDI). Pour ce faire, vous devez l'enregistrer dans le registre de service OSGi avec la propriété de service osgi.jndi.service.name. La valeur de osgi.jndi.service.name est le nom JNDI requis. De même, pour rechercher un objet dans l'espace de nom JNDI par défaut, vous pouvez parcourir le registre de service OSGi avec la propriété de service osgi.jndi.service.name. La valeur de osgi.jndi.service.name est le nom JNDI. - Développement d'un intercepteur de relations de confiance personnalisé en tant que fonction de profil Liberty
Vous pouvez développer un intercepteur de relations de confiance personnalisé en tant que fonction de profil Liberty en implémentant l'interface com.ibm.wsspi.security.tai.TrustAssociationInterceptor mise à disposition sur le serveur de profil Liberty et en créant une extension de produit. - Gestion de contenu dynamique
En général, vous installez les bundles dans l'environnement d'exécution en les répertoriant dans l'en-tête Subsystem-Content du fichier de manifeste de la fonction. Toutefois, vous pouvez également ajouter dynamiquement les bundles OSGi et les supprimer en installant un bundle écrit par l'utilisateur dans l'en-tête Subsystem-Content d'une fonction écrite par l'utilisateur. Le bundle écrit par l'utilisateur obtient le contexte OSGi pour installer et contrôler les autres bundles.
Rubrique parent : Extension du profil Liberty
Concepts associés:

Dispositions pour les centres de documentation | Commentaires

http://www14.software.ibm.com/webapp/wsbroker/redirect?version=phil&product=was-libcore-mp&topic=twlp_feat_develop
Nom du fichier : twlp_feat_develop.html