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 :

[JSP] Inclusion dans une condition d'un fichier jsp


Sujet :

Servlets/JSP Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Inscrit en
    Mai 2004
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 3
    Par défaut [JSP] Inclusion dans une condition d'un fichier jsp
    Bonjour

    Je m'adresse à vous tous, car je n'ai pas trouvé la solution sur le web et je suis sûr pourtant que plus d'une personne ont été confronté à ce pb.

    Je voudrais savoir, comment dans une jsp, à l'intérieur d'une condition je peux inclure un autre fichier jsp.

    Petit exemple qui ne marche pas, bien sûr :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <%
    if (monTest) {
    %>
      <%@ include file="monFichier.jsp" %>
    <% } %>
    Voilà, merci d'avance

  2. #2
    Membre chevronné
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2004
    Messages
    265
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Avril 2004
    Messages : 265
    Par défaut
    Salut,

    ça devrait marcher le bout de code que tu viens de mettre, tu as quoi comme erreur ?

  3. #3
    Membre Expert
    Avatar de zekey
    Profil pro
    Inscrit en
    Février 2005
    Messages
    1 036
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 1 036
    Par défaut
    essaye plutot <jsp:include page="monFichier.jsp" flush="true" />
    De plus evite les scriptlet et utilise la jstl ou les tags struts par exemple

  4. #4
    Candidat au Club
    Inscrit en
    Mai 2004
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 3
    Par défaut
    Rebonjour,

    En effet, si on met juste de l'affichage ca marche (je viens de m'en rendre compte, sorry), mais ce que je voulais faire, c'était de déclarer des types dans ce fichier puis de les utiliser par la suite :

    Dans le fichier principal :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    int ajout = 2
    if (monTest) {
      <%@ include file="page.jsp" %>
      maVar+= ajout;
    }
    Dans le fichier page.jsp
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <%
      int maVar = 3;
    %>

  5. #5
    Candidat au Club
    Inscrit en
    Mai 2004
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 3
    Par défaut
    Je crois comprendre ce qui se passe dans mon code, mais je sais pas comment faire pour que ca marche, désolé d'être confus.

    En fait ma page contient plusieur include avec des définitions de var spécifiques.

    Page principale :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <%@ include file="context.jsp" %>
    <% 
     // du code
    if (monTest) {
    %>
    <%@ include file="page1.jsp" %>
    <%  
    }
    %>
    Page context.jsp :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <%@ page import="fr.app.Ctx" %>
    <%
     Ctx context = (Ctx)request.getAttribute("context");
     // code
    %>
    Page page1.jsp :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <%
      String monVtp = context.getVtp();
    %>
    L'erreur provoqué me dis qu'il ne connait pas context (déclaré dans context.jsp), comme si une variable déclaré dans un include avant n'était pas considéré ensuite, donc finalement rien à voir avec les if/else.

  6. #6
    Membre Expert
    Avatar de zekey
    Profil pro
    Inscrit en
    Février 2005
    Messages
    1 036
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 1 036
    Par défaut
    La méthode :
    1)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <%@ include file="context.jsp" %>
    fait une inclusion statique, c'est à fait un copier coller de la page originale dans la nouvelle.
    Attention cette solution est spécifique à chaque server donc son comportement est suceptible de varier. La question étant de savoir si la copie statique est faite avant ou apres l'interpretation de la page. Apparement après puisque ca ne marche pas.

    2)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <jsp:include page="monFichier.jsp" flush="true" />
    Execute la jsp et rajoute le résultat dans la page actuelle

    Donc vraisemblablement aucune des deux solution ne résoudra ton problème cependant deux remarques:
    1) Tu utilises bcp de scriptlets ce n'est pas nécéssairement très propre comme facon de programmer. Pourquoi ne pas faire des import et utiliser jsp:useBean ?

    2) Si tu veux un mécanisme qui te permette de factoriser les pages tiles peut aider.


    Je ne suis pas sure d'avoir bien compris tes objectifs donc si tu peux préciser.

Discussions similaires

  1. Utiliser un fichier externe dans une condition
    Par jpl56 dans le forum Deski
    Réponses: 4
    Dernier message: 13/10/2006, 10h24
  2. Fonction MAX dans une condition WHERE
    Par borgfabr dans le forum Langage SQL
    Réponses: 4
    Dernier message: 12/10/2004, 16h06
  3. [servlet][JSP]forwarder dans une frame
    Par deldin dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 30/06/2004, 18h03
  4. Réponses: 2
    Dernier message: 24/06/2004, 09h13
  5. [struts][jsp]Inclusion dans une jsp
    Par GreenJay dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 17/06/2004, 11h43

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