La difficulté de la mise à niveau de JSF 1.2 vers 2.0 est basée sur la technologie d'affichage que vous utilisez actuellement et celle de l'avenir. Cela dépend de la technologie de visualisation que vous envisagez d'utiliser.
Indépendamment de la technologie de changement d'affichage, vous devez au moins effectuer les étapes suivantes :
<faces-config xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd" version="2.0">
Remarque : Si vous utilisez JSF 2.2 ou une version ultérieure, utilisez http://xmlns.jcp au lieu de http://java.sun.com dans tout l'extrait XML ci-dessus. Domaine d'espace de noms .org.
<web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" >
Remarque : Si vous utilisez Servlet 3.0 ou supérieur, utilisez http://xmlns.jcp au lieu de http://java.sun.com dans tout l'extrait XML ci-dessus. Domaine d'espace de noms .org.
Si vous utilisez JSP 2. En gros, vous n'avez rien d'autre à changer. Mise à niveau progressive
Si vous utilisez déjà un modèle d'URL de suffixe (tel que , FacesServlet recherche d'abord Fichiers .xhtml et s'ils n'existent pas, *.jsp C'est une bonne idée de penser à analyser vos fichiers. Cela permet une conversion progressive de JSP vers Facelets sans changer les URL. Cependant, si vous utilisez un modèle d'URL de préfixe (par exemple /faces/) et que vous souhaitez passer de JSP à Facelets par étapes, remplacez-le par .jsf et remplacez éventuellement les liens Tous les liens existants dans le fichier La page JSP doit également être modifiée. Veuillez noter que la nouvelle navigation implicite fournie par JSF 2.0 ne recherche pas l'existence du fichier et navigue quand même vers result.xhtml. Donc, si vous passez de .jsp ou à .jsp, vous devez toujours l'inclure dans l'ID de vue à la manière JSF 1.x. J'utilise Facelets 1.x comme technologie de visualisation et Facelets 2.0<🎜 est livré avec JSF 2.0 >. Si vous souhaitez l'utiliser, vous devez suivre les étapes supplémentaires suivantes : JSP 2.x comme technologie d'affichage et nous passerons bientôt à Facelets 2.0 Si vous le souhaitez, vous devrez apporter de nombreuses modifications avant de publier votre site. Nous modifions fondamentalement la technique d'affichage ici. Si vos pages JSP existantes sont bien conçues, il n'y aura pas de scriptlet lignes de code et la seule balise spécifique à JSP sera Modifiez comme suit. Modèle de page d'inclusion JSP de base... ... doit être remplacé par le modèle de page d'inclusion de Facelets de base suivant. Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!Facelets 1.x à Facelets 2.0
Supprimez le JAR Facelets 1.x de /WEB-INF/lib. Facelets 1.x Supprimez FaceletViewHandler de faces-config.xml. Si vous disposez d'une implémentation FaceletViewHandler personnalisée, vous devez la mettre à jour pour étendre ViewHandlerWrapper. Bien que cela soit inutile, à des fins de nettoyage, supprimez les valeurs
<faces-config
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd"
version="2.0">
<web-app
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
>
<facelet-taglib
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facelettaglibrary_2_0.xsd"
version="2.0">
Inclure les modifications de page
<faces-config
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd"
version="2.0">
<web-app
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
>
<facelet-taglib
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facelettaglibrary_2_0.xsd"
version="2.0">
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@taglib prefix="f" uri="http://java.sun.com/jsf/core"%>
<%@taglib prefix="h" uri="http://java.sun.com/jsf/html"%>
<!DOCTYPE html>
<f:view>
<html lang="en">
<head>
<title>JSP page</title>
</head>
<body>
<h:outputText value="JSF components here." />
</body>
</html>
</f:view>