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 :

Architecture pour appel de JSP


Sujet :

Servlets/JSP Java

  1. #1
    Inactif   Avatar de Deallyra
    Profil pro
    Étudiant
    Inscrit en
    Février 2007
    Messages
    1 997
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 1 997
    Points : 1 769
    Points
    1 769
    Par défaut Architecture pour appel de JSP
    Bonjour,

    Aujourd'hui j'ai un problème sur lequel je planche depuis quelques jours sans trouver de solution... Parce que j'ai du mal à le formuler...

    Pour le simplifier au maximum, disons que j'ai la page jsp suivante :
    index.jsp
    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    <?xml version="1.0" encoding="UTF-8" ?>
    <%@ page language="java" contentType="text/html; charset=UTF-8"
      pageEncoding="UTF-8"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
      <head>
        <title>page</title>
      </head>
      <body>
        <%@ include file="content.jsp" %>
      </body>
    </html>

    Simplifié au maximum car cette page contient le header, login, le nav, le footer...
    Mais ce sont des éléments plus ou moins fixes.

    Mon "problème" est que content.jsp... est dynamique. Si je suis sur la page d'accueil, il doit m'afficher le message de bienvenue.
    Si je suis sur la page FAQ, il doit m'afficher les questions/réponses
    Si je suis sur la page Contact, un formulaire ...

    Oui mais je le fais comment ? :s

    J'ai voulu faire ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <%
      /* On recupere le parametre de page a afficher */
      page = request.getParameter("page");
      if ("index".equals(page) || page == null ){ %>
        <%@ include file="/accueil.jsp" %>
    <%}else if("temp".equals(page)){ %>
        <%@ include file="/temp.jsp" %>
    <%}else{ %>
        <%@ include file="/404.jsp" %>
    <%} %>
    Ca fonctionne certes... Mais ça me semble hyper crade et je pense qu'on doit pouvoir faire autrement avec les servlets.
    De plus, ça oblige à mettre du code conditionnel tout partout, ça devient horrible à lire...

    Mais le fait est que je ne sais pas comment changer le contenu de content.jsp dynamiquement.

    A la base, j'avais plus un truc style page_haut.jsp, page_bas.jsp...
    page_haut.jsp
    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?xml version="1.0" encoding="UTF-8" ?>
    <%@ page language="java" contentType="text/html; charset=UTF-8"
      pageEncoding="UTF-8"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
      <head>
        <title>page</title>
      </head>
      <body>
    page_bas.jsp
    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
      </body>
    </html>

    j'avais ma page toto.jsp qui incluait les deux et voilà, aucun problème.
    Sauf que là, c'était sémantiquement incorrect pour les fichiers en eux même, on ouvrait des balises sans les fermer et tutti quanti...

    Et puis ça n'a pas été validé au dessus de moi.

    Donc j'aimerai savoir comment faire...

    Si vous aviez des idées, des pistes, des façons de faire...

    Merci à vous,

  2. #2
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    Un truc comme ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    <html>
    <body>
    Ma page modèle
     
    <%
    String pagePath = "page2.jsp";
    %>
     
    <jsp:include page="<%=pagePath%>" />
    </body>
    </html>

  3. #3
    Inactif   Avatar de Deallyra
    Profil pro
    Étudiant
    Inscrit en
    Février 2007
    Messages
    1 997
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 1 997
    Points : 1 769
    Points
    1 769
    Par défaut
    Parralèlement à cette solution que vous m'avez proposé, j'avais mis en place une chose similaire.

    En fait, je me suis créer une classe Engine qui récupérait le nom de la page à afficher dans le content.jsp.

    Seulement, je n'ai pensé que trop tard au fait que ma classe Engine est un singleton chargé en mémoire au lancement du serveur...
    Et partagé par tous les utilisateurs.

    Bien joué l'aveugle !

    Du coup, je pense lancer un httpsession dès la connexion d'un joueur... Et c'est là que se trouvera cette variable.

    Merci à vous

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

Discussions similaires

  1. Architecture pour insérer du GWT dans une appli web en JSP
    Par nicorama dans le forum GWT et Vaadin
    Réponses: 2
    Dernier message: 10/06/2008, 20h05
  2. [JSTL] problème pour appeler une autre jsp
    Par forHelp dans le forum Taglibs
    Réponses: 3
    Dernier message: 09/11/2007, 12h16
  3. JSP pour appeler et afficher un JAVA
    Par cwigma dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 10/04/2007, 23h46
  4. [architecture] pour de la généricité, vous feriez quoi ?
    Par Alec6 dans le forum Débats sur le développement - Le Best Of
    Réponses: 39
    Dernier message: 03/07/2006, 15h39
  5. [débutant]ou mettre un fichier java pour une appli jsp?
    Par zozolh2 dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 11/05/2004, 16h20

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