Vous pouvez configurer WebSphere Application Server Traditional
Version 9.0 pour qu'il utilise JSF 2.2 et ainsi, améliorer l'efficacité des développeurs et obtenir une plus grande compatibilité avec les paradigmes modernes.
Avant de commencer
Vérifiez que votre application est configurée pour JavaServer Faces (JSF)
en utilisant les paramètres de contexte
web.xml propres à l'implémentation que vous avez choisie.
Avertissement : The JSF implementation is a server-wide configuration setting on Version 8.0 and
later nodes. Si vous disposez de plusieurs applications nécessitant différentes implémentations
JSF, vous devez placer les applications dans des serveurs d'applications ou des clusters différents, puis spécifier l'implémentation pour chaque serveur d'applications ou cluster. Pour les noeuds version 7.0, l'implémentation JSF est un paramètre de configuration d'application. Pour les noeuds version 9.0 ou ultérieure, l'implémentation JSF Sun Reference 1.2 n'est pas prise en charge. Utilisez à la place l'implémentation JSF MyFaces. Vous avez aussi la possibilité d'utiliser une bibliothèque partagée isolée, comme décrit pour les implémentations JSF tierces.
Pourquoi et quand exécuter cette tâche
Apache MyFaces 2.2 est utilisé à partir de la phase d'exécution du produit. Vous pouvez utiliser Apache MyFaces 2.2 ou votre propre implémentation. Vous pouvez aussi configurer l'implémentation JSF
dans le panneau Fournir des options de rechargement JSP pour les modules Web pour les assistants
d'installation et de mise à jour d'applications. Configurez le serveur ou le cluster pour qu'il utilise l'implémentation JSF souhaitée. Exécutez cette tâche à l'aide de la console d'administration ou de l'outil wsadmin.
Procédure
- Dans le panneau de la console d'administration, cliquez sur .
- Sélectionnez MyFaces 2.2 pour utiliser l'implémentation JSF MyFaces par défaut. Si vous utilisez l'outil wsadmin, consultez l'exemple ci-après qui explique comment configurer un cluster dans le but d'utiliser l'implémentation JSF MyFaces 2.2 :
wsadmin>set cluster [$AdminConfig list ServerCluster]
cluster1(cells/myNode01Cell/nodes/myNode01/clusters/cluster1|cluster.xml#ServerCluster_1173916133721)
wsadmin>$AdminConfig modify $cluster {{jsfProvider MyFaces}}
wsadmin>$AdminConfig save
Exemple de paramétrage d'un cluster pour qu'il utilise l'implémentation MyFaces 2.2 de JSF :wsadmin>set cluster [$AdminConfig list ServerCluster]
cluster1(cells/myNode01Cell/nodes/myNode01/clusters/cluster1|cluster.xml#ServerCluster_1173916133721)
wsadmin>$AdminConfig modify $cluster {{jsfProvider MyFaces}}
wsadmin>$AdminConfig save
Attention : Si vous voulez utiliser une implémentation JSF tierce non fournie avec le produit, procédez comme suit :
- Ajoutez le programme d'écoute tiers au fichier web.xml.
- Ajoutez les fichiers JAR (archive Java™) de l'implémentation JSF tiers
à l'application sous la forme d'une bibliothèque partagée isolée et associez-la
à votre application :
- Déplacez les fichiers JAR JSF et toutes les bibliothèques tierces référencées par les fichiers JAR JSF et les plug-ins de composant d'interface utilisateur (par exemple, PrimeFaces) dans un répertoire en dehors de l'application.
- Créez la bibliothèque partagée isolée. Pour plus d'informations sur la manière de
créer la bibliothèque partagée, reportez-vous à la rubrique Création de bibliothèques partagées.
- Assurez-vous que le chargeur de classe possède la valeur par défaut PARENT_FIRST. Pour afficher la configuration actuelle dans le panneau de la console d'administration,
cliquez sur .
Que faire ensuite
Pour pouvoir utiliser l'API FlowBuilder afin de créer des annotations Flows with FlowBuilder, la méthode producteur CDI appropriée doit être déclarée dans un bean gérée ou une classe de bean session. Pour faire en sorte que la classe soit correctement gérée par CDI, attribuez une portée à la classe de méthode producteur afin de la définir en tant que bean géré, ou affectez la valeur
all au mode CDI bean-discovery-mode. Vous pouvez définir le mode CDI bean-discovery-mode sur
all
dans le fichier
beans.xml de votre archive Web.
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/beans_1_1.xsd"
bean-discovery-mode="all">
</beans>