web-dev-qa-db-fra.com

Qu'est-ce que l'extension de fichier .jspf? Comment le compiler?

Que sont les fichiers .jspf dans JSP? Comme je sais que le compilateur cherchera les fichiers .jsp à compiler, comment les fichiers .jspf sont-ils compilés?

88
giri

Comme d'autres l'ont noté, les fichiers .jspf sont des fragments JSP. Ils sont conçus pour être inclus de manière statique dans un autre fichier JSP, et non compilés par eux-mêmes:

<%@include file="/WEB-INF/jspf/example.jspf" %>

Vous remarquerez que cet exemple provient du /WEB-INF/jspf répertoire. Cela signifie qu'il n'est pas accessible en dehors de l'application Web; Il n'y a aucun moyen de construire une URL capable de la récupérer. Si vous les placez dans le même répertoire que les fichiers JSP "normaux", vous pouvez créer une telle URL. Tomcat, par exemple, récupérera la page en tant que document texte. Un serveur Web frontal peut toutefois bloquer ces URL.

J'aime les fichiers JSPF comme première étape de refactoring de grandes pages JSP . Comme ils sont inclus statiquement, vous pouvez extraire une petite partie du fichier sans prévoir de scripts ou de variables, ce qui conduit à des pages un peu plus faciles à gérer (et je tiens à le souligner, il s'agit d'un première étape ; les inclusions dynamiques et les taglibs sont généralement une meilleure solution à long terme). Lors de la refactorisation, je crois qu'il faut garder les fragments proches de leurs fichiers parents; c'est à ce moment qu'il devient utile d'avoir un serveur Web pour bloquer les URL.

123
kdgregory

Les fragments JSP peuvent être comparés aux inclusions côté serveur. Ces fragments ne sont pas compilés seuls, cependant, ils sont compilés le long de la page dans laquelle il est inclus. Si je dois afficher différentes pages en fonction des préférences de l'utilisateur, j'opterai pour jspf.

10
kodepet

Quoi: Les fichiers .jspf sont généralement des fichiers inclus dans les fichiers .jsp via la directive include. Le "f" signifie "fragment" car ces fichiers ne sont pas des JSP complets en soi.

Comment compiler: Comme .jspf est un fragment d'un jsp, il peut donc ne pas être une source complète et compilable, aussi ne peut-il être compilé indépendamment d'un autre, complète, source qui les référence.

Source: Infocentre Ibm

6
vmishra

IBM dit que .jspf est pour les fragments JSP. Un fragment peut ne pas être une source complète et compilable, il est donc probable qu'il ne puisse pas être compilé indépendamment d'une autre source complète qui les référence.

Ils sont mentionnés dans ressources de développement de Sun dans le même contexte - une convention de dénomination pour les fragments JSP.

4
brabster

Dans de nombreux frameworks Web, il est possible d'assembler des vues et des pages à partir de vues et de pages partagées plus petites. En utilisant JSP, ces plus petites pièces sont appelées fragments. Comme son nom l'indique, ils ne constituent pas nécessairement une représentation complète sans un contexte plus large.

D'autres langues et cadres ont leur propre terme pour le concept équivalent. Dans Ruby sur Rails, par exemple, ils s'appellent partiels.

2
John Feminella