IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Servlets/JSP Java Discussion :

Comment faire un include implicite?


Sujet :

Servlets/JSP Java

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 44
    Par défaut Comment faire un include implicite?
    Bonjour,

    j'aimerais me debarasser de la ligne d'entete de tous mes fichiers jsp
    qui ressemble a
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    <%String DsName="myDataSource";%>
    <%@ page import="mesClasses.*"%>
    j'ai lu qu'on pouvait utiliser un jsp-property-group dans le web.xml
    mais je n'arrive pas a le faire fonctionner apparement

    j'ai essayé ca
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <!DOCTYPE web-app  PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
     
    <web-app>
     
        <display-name>MyApp</display-name>
        <description/>
        <jsp-config>
              <jsp-property-group>
                     <url-pattern>*.jsp</url-pattern> 
                     <include-prelude>/WEB-INF/prelude.jsp</include-prelude>
              </jsp-property-group>
        </jsp-config>
    </web-app>
    comment l'utiliser correctement?
    y'a-t-il une alternative?

    Merci d'avance

  2. #2
    Membre émérite Avatar de Lorantus
    Homme Profil pro
    Consultant développeur indépendant / Java/VB/C(++)/ObjectPal
    Inscrit en
    Août 2007
    Messages
    599
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant développeur indépendant / Java/VB/C(++)/ObjectPal

    Informations forums :
    Inscription : Août 2007
    Messages : 599
    Par défaut
    Attention :
    Les <jsp-property-group> sont valable à partir de JSP 2.0.

    Sur cette adresse Oracle (en anglais) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <include-prelude>....</include-prelude>
    doit être accessible par le site.
    Au lieu de placer le "prelude.jsp" dans "/WEB-INF/" fais un répertoire dans la racine de l'application (type 'common') et place le prélude dedans :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <include-prelude>/common/prelude.jsp</include-prelude>

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 44
    Par défaut
    Citation Envoyé par Lorantus Voir le message
    Attention :
    Les <jsp-property-group> sont valable à partir de JSP 2.0.
    Comment savoir quelle version de jsp est supportée par mon apache - tomcat 5.5?

  4. #4
    Membre chevronné
    Avatar de link256
    Profil pro
    Développeur Java
    Inscrit en
    Février 2003
    Messages
    596
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Février 2003
    Messages : 596
    Par défaut
    En fonction du J2EE que tu utilises.

    http://tomcat.apache.org/tomcat-5.5-...per-howto.html

    Tomcat 5.5 uses the Jasper 2 JSP Engine to implement the JavaServer Pages 2.0 specification.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 44
    Par défaut
    OK pas de soucis j'utilises TOmcat 5.5 justement mais je n'arrive pas a utiliser correctement <jsp-property-group>
    honte sur moi...
    j'ai essayé comme Lorantus disait mais ca n'a rien donné

  6. #6
    Expert confirmé

    Femme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 793
    Par défaut
    Pour que ton appli soit J2EE 1.4 (Servlet 2.4/JSP 2.0), il faut remplacer les balises DOCTYPE et web-app du web.xml :
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <!DOCTYPE web-app  PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
     
    <web-app>
    par la balise web-app suivante :
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <web-app xmlns="http://java.sun.com/xml/ns/j2ee"
    	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    	xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
    	version="2.4">

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 44
    Par défaut
    Citation Envoyé par c_nvy Voir le message
    Pour que ton appli soit J2EE 1.4 (Servlet 2.4/JSP 2.0), il faut remplacer les balises DOCTYPE et web-app du web.xml :
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <!DOCTYPE web-app  PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
     
    <web-app>
    par la balise web-app suivante :
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <web-app xmlns="http://java.sun.com/xml/ns/j2ee"
    	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    	xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
    	version="2.4">
    Merci bcp on approche du but mais il me reste un soucis
    ca ca marche
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <jsp-config>
              <jsp-property-group>
                     <url-pattern>*.jsp</url-pattern> 
                     <include-prelude>/common/prelude.jsp</include-prelude>
              </jsp-property-group>
        </jsp-config>
    mais ca ca marche pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <jsp-config>
              <jsp-property-group>
                     <url-pattern>/test/*.jsp</url-pattern> 
                     <include-prelude>/common/prelude.jsp</include-prelude>
              </jsp-property-group>
        </jsp-config>
    pk?

  8. #8
    Membre chevronné
    Avatar de link256
    Profil pro
    Développeur Java
    Inscrit en
    Février 2003
    Messages
    596
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Février 2003
    Messages : 596
    Par défaut
    J'avais rencontré un problème similaire et l'on peut utiliser une seule *

    Peut être que l'url pattern ne prend compte que les pattern de la forme
    A* et *A mais pas de A*B dans ton cas as tu vraiment besoin de préciser le .jsp

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <url-pattern>/test/*.jsp</url-pattern>
    Tant donné que tu es déja dans du spécifique jsp et alors simplement utiliser :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <url-pattern>/test/*</url-pattern>
    Même si sa répond pas a ta question et sa m'interesse je vais voir si je trouve de la doc sur le sujet.

    Si quelqu'un en a qu'il n'hésite pas, merci

  9. #9
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 44
    Par défaut
    Citation Envoyé par link256 Voir le message
    J'avais rencontré un problème similaire et l'on peut utiliser une seule *

    Peut être que l'url pattern ne prend compte que les pattern de la forme
    A* et *A mais pas de A*B dans ton cas as tu vraiment besoin de préciser le .jsp

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <url-pattern>/test/*.jsp</url-pattern>
    Tant donné que tu es déja dans du spécifique jsp et alors simplement utiliser :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <url-pattern>/test/*</url-pattern>
    Même si sa répond pas a ta question et sa m'interesse je vais voir si je trouve de la doc sur le sujet.

    Si quelqu'un en a qu'il n'hésite pas, merci

    Effectivement ca marche comme ca merci

  10. #10
    Membre chevronné
    Avatar de link256
    Profil pro
    Développeur Java
    Inscrit en
    Février 2003
    Messages
    596
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Février 2003
    Messages : 596
    Par défaut
    La doc pour les servlet 2.3 et 2.4 est identique et ne nous avance pas trop sur le sujet.
    servlet-2.3-spec-oth-JSpec@CDS-CDS_JCP

    SRV.11.2 Specification of Mappings
    In theWeb application deployment descriptor, the following syntax is used to define
    mappings:
    • A string beginning with a ‘/’ character and ending with a ‘/*’ suffix is used
    for path mapping.
    • A string beginning with a ‘*.’ prefix is used as an extension mapping.
    • A string containing only the ’/’ character indicates the "default" servlet of
    the application. In this case the servlet path is the request URI minus the context
    path and the path info is null.
    • All other strings are used for exact matches only.
    SRV.11.2.1 Implicit Mappings
    If the container has an internal JSP container, the *.jsp extension is mapped to it,
    allowing JSP pages to be executed on demand. This mapping is termed an implicit
    mapping. If a *.jsp mapping is defined by the Web application, its mapping takes
    precedence over the implicit mapping.
    A servlet container is allowed to make other implicit mappings as long as
    explicit mappings take precedence. For example, an implicit mapping of
    *.shtml could be mapped to include functionality on the server.
    Aucun exemple de a*b n'est mentionné je ne sais plus ou j'ai lu que l'on ne pouvait utiliser qu'une et une seule *

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 22/06/2011, 01h29
  2. LinqToEntities : .Include() récursif, comment faire?
    Par takinelinfo dans le forum Entity Framework
    Réponses: 5
    Dernier message: 08/06/2011, 21h34
  3. Réponses: 10
    Dernier message: 11/07/2008, 11h48
  4. Réponses: 3
    Dernier message: 04/01/2008, 09h10
  5. [C# 2.0] Comment faire un include comme en php ?
    Par dymezac dans le forum ASP.NET
    Réponses: 4
    Dernier message: 22/09/2006, 11h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo