El .jsf
L'extension est l'endroit où le FacesServlet
c'est pendant la période JSF 1.2, souvent décrite dans la section web.xml
.
<servlet-mapping>
<servlet-name>facesServlet</servlet-name>
<url-pattern>*.jsf</url-pattern>
</servlet-mapping>
El .xhtml
L'extension est de l'ordre de réel Facelets que vous avez physiquement placé dans le contenu web de votre application web, par ex. Webapp/WebContent/page.xhtml
.
Si vous invoquez cette page avec l'option .jsf
extension, par exemple http://localhost:8080/webapp/page.jsf
alors le FacesServlet
sera invoqué, localiser le page.xhtml
et analyser/rendre ses composants JSF. Si le FacesServlet
n'est pas invoqué, l'utilisateur final se retrouverait avec le code source XHTML brut (qui peut être vu par un clic droit, Voir la source ).
Parfois, un *.faces
extension ou /faces/*
Le foldermapping est utilisé. Mais cela remonte à l'époque de JSF 1.0/1.1. Vous êtes libre de choisir et d'utiliser n'importe quel mappage que vous voulez pour laisser FacesServlet
écoutez, même si c'est un rien du tout. *.xyz
. La page proprement dite doit toujours avoir l'adresse .xhtml
mais celle-ci est configurable par les moyens suivants <context-param>
en web.xml
:
<context-param>
<param-name>javax.faces.DEFAULT_SUFFIX</param-name>
<param-value>.xml</param-value>
</context-param>
Cela modifiera le FacesServlet
pour localiser page.xml
à la place de (par défaut) page.xhtml
.
Plus récemment, avec JSF/Facelets 2.0 une *.xhtml
a été utilisé. Dans JSF/Facelets 1.x, il n'était pas possible d'utiliser la même extension de mappage que le fichier physique. Cela entraînait une boucle infinie. Mais depuis JSF/Facelets 2.0 c'est possible et cela vous permet d'appeler la page par http://localhost:8080/webapp/page.xhtml
.
<servlet-mapping>
<servlet-name>facesServlet</servlet-name>
<url-pattern>*.xhtml</url-pattern>
</servlet-mapping>
De cette façon, vous n'avez pas besoin de configurer des restrictions de sécurité pour cacher les fichiers sources bruts dans les cas où l'utilisateur final modifie, par exemple, l'un des éléments suivants .jsf
en URL à .xhtml
dans la barre d'adresse du navigateur. Seuls les outils (IDE et plugins) et les ressources d'apprentissage doivent encore rattraper le passage préconisé de l'informatique à l'informatique. *.jsf
à *.xhtml
. Conformément à la version 2.3 de JSF, l'option FacesServlet
sera par défaut auto-enregistré sur *.xhtml
également (à côté de /faces/*
, *.faces
y *.jsf
). Ceci est rétroporté vers Mojarra 2.2.11.
Voir aussi :