Le mélange JSP et XHTML (Facelets) dans JSF2 Projet possible?
J'ai un client qui veut utiliser JSF2 et ils aiment que XHTML est maintenant par défaut (Facelets).
Cependant, ils ont une quantité énorme de "l'héritage" de JSP à partir de leur JSF1.x de la base de code.
Je sais que c'est probablement pas souhaitable, mais il sera possible de soutenir un mélange des deux dans JSF2, au moins pour une période de transition alors qu'ils ont port?
Je sais qu'il était possible de mélanger les deux dans JSF1.x, mais je ne trouve aucune information à ce sujet dans JSF2.
J'ai googlé dur mais naturellement, toutes les JSF2 accent est mis sur les Facelets. Aussi ma brève tentative de mélange (je ne suis pas un expert de l'ACI!) a conduit à l'échec.
OriginalL'auteur Dick Chesterwood | 2010-10-14
Vous devez vous connecter pour publier un commentaire.
Cela est répondu dans la Facelets FAQ: utiliser le préfixe de cartographie sur
FacesServlet
. Vous pouvez alors accéder à des pages JSP par http://example.com/faces/page.jsp et Facelets pages par http://example.com/faces/page.xhtml. Voici un cite de pertinence:Pour info: une autre façon est d'utiliser un suffixe de cartographie de
*.jsf
. JSF2 sera la première analyse de fichier XHTML. S'il est absent, alors il sera d'analyse de fichier JSP. Voir aussi stackoverflow.com/questions/4441713/...OriginalL'auteur BalusC
Le wiki, section cité par BalusC semble être en effet de la date. Dans mon mappage d'extension (*.visages), de l'installation j'ai eu le problème avec le projet de
javax.faces.DEFAULT_SUFFIX
ensemble de.jsp
qui a généré l'action des Url à l'intérieur de balises de formulaire de *.les pages xhtml obtenu un .jsp extension au lieu d'un .les faces d'extension (et, par conséquent, ne peut être mappé).Après, j'ai pénétré dans les classes correspondantes de l'Apache MyFaces 2.x mise en œuvre (voir org.apache.myfaces.partagé.application.DefaultViewHandlerSupport.calculateActionURL(FacesContext context, String viewId)) la configuration suivante s'est avéré à l'œuvre dans notre utilisation parallèle de JSP et de Facelets Vue de la Manipulation.
Comment puis-je utiliser Facelets et JSP dans la même application?
Outre préfixe de cartographie, vous pouvez utiliser l'extension de la cartographie (par exemple *.faces) pour les Facelets pages dans l'ordre pour que cela fonctionne. Laissez le DEFAULT_SUFFIX avec la JSF défaut de
.jsp .xhtml
. Configurer la Facelet de VIEW_MAPPINGS paramètre:Pour ceux qui sont intéressés par les détails de la transformation de l'action de l'url à l'intérieur de org.apache.myfaces.partagé.application.DefaultViewHandlerSupport.calculateActionURL(FacesContext context, String viewId):
OriginalL'auteur Florian Sager
La suggestion ci-dessus ne fonctionne pas du tout pour moi. La page wiki est probablement pas à jour. À partir de la JSF2 spécification j'ai eu le paramètre suivant qui a travaillé:
au lieu de:
OriginalL'auteur Karl Kildén