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 :

Contenu dynamique depuis un menu


Sujet :

Servlets/JSP Java

  1. #1
    Membre régulier
    Inscrit en
    Mars 2010
    Messages
    100
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 100
    Points : 80
    Points
    80
    Par défaut Contenu dynamique depuis un menu
    Bonjour à tous!

    voilà mon 2eme post sur le forum, je pense avoir suffisament fouille sans succes...

    Je realise actuellement une application web selon l'architecture MVC.

    J'ai construit une page contenant une liste de rapports. L'utilisateur peut en selectionner un et valider par un clic.
    Une servlet redirige l'utilisateur sur une page de resultat.
    Je peux dire que c'est fonctionnellement ce que je souhaite MAIS le design laisse a desirer... Je voudrai construire une unique page avec la liste sur la partie gauche de la page, comme un menu. Et le resultat de la selection, comme corps principal de la page.

    Actuellement, j'ai essaye de le faire avec l'utilisation de frame. Mais a chaque selection de rapports, il m'affiche le resultat au meme endroit que le menu.
    Bref, j'ai une page qui s'appelle recursivement dans mon menu.

    J'ai cru comprendre qu'il serait interessant d'utiliser Ajax. Alors, ok j'suis partant! Malheureusementm sur ce coup là je seche completement. Et pour le choix de la librairie et pour une idee de la realisation.

    Merci par avance de vos reponses,
    j'espere avoir ete assez clair.


  2. #2
    Membre régulier
    Inscrit en
    Mars 2010
    Messages
    100
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 100
    Points : 80
    Points
    80
    Par défaut
    Bonjour,

    je reviens vers vous apres avoir suivi des tutos et exemples qui ne s'adaptent jamais a mon architecture MVC.

    alors si quelqu'un peut m'orienter, je suis completement a son ecoute!

    merci de nouveau

  3. #3
    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
    Il faut changer la cible de ton action (côté menu).
    Pour ça, tu as l'attribut "target", il suffit de mettre le nom du frame cible.

  4. #4
    Membre régulier
    Inscrit en
    Mars 2010
    Messages
    100
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 100
    Points : 80
    Points
    80
    Par défaut
    Merci de ta reponse, OButterlin

    j'ai donc immediatement essaye et j'ai un soucis.

    voici le code de ma page avec les frames :


    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <title>Test de page</title>
    </head>
    <frameset cols="25%, 75%" frameborder="NO" border="0" framespacing="0">
        <frame src="./forms.jsp" target="formResult.jsp" name="menuFrame" scrolling="NO" noresize >
        <frame src="./formResult.jsp" name="mainFrame">
        <noframes>
        <body>
        <p>Affichage Menu + Rapport</p>
        </body>
        </noframes>
    </frameset>
    </html>

    où forms.jsp est le formulaire qui utilise une servlet pour retourner ses parametres à formResult.jsp

    Mais desormais je ne transmets plus mes parametres... la frame formResult ne contient que des valeurs a "NULL".

    c'etait fonctionnel, ca ne l'est plus mais graphiquement, on avance

    merci de votre aide

  5. #5
    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
    D'après ce que je comprends de ton problème, la partie gauche contient un menu et la partie droite le résultat d'une option de menu.
    Donc, l'attribut "target" n'est pas à mettre dans la définition du frame mais dans le lien du menu.
    Ci-joint un exemple...
    Fichiers attachés Fichiers attachés

  6. #6
    Membre régulier
    Inscrit en
    Mars 2010
    Messages
    100
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 100
    Points : 80
    Points
    80
    Par défaut
    dans mon menu, il y a juste une liste deroulante.

    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    <form name="firstForm" action="firstFormAction.do" method="post" 
                 style="width:50%;margin:auto;background-color:#c1d9fc;padding-bottom:15px;">
     
    		<div style="text-align:center;">		
    			<h2 style="color:white;background-color:#6683b1;">Accueil</h2>
     
    			<p>Selection du report : 
    				<select name="reports">
    					<option value="test">test.rptdesign</option>
    					<option value="test1">test1.rptdesign</option>
    					<option value="pierre">pierre.rptdesign</option>
    				</select>
    			</p>
    			<p style="width:50%;margin:auto;"><input type="submit" name="Valider" value="Valider"/></p>
    		</div>
    	</form>

    Les elements de la liste sont le nom de reports BIRT que je deploie sur mon serveur JBoss.
    Le choix d'un des elements entraine l'appel de la servlet qui assure l'affichage du fameux report.

    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <body>
     
    	<div style="width:50%;margin:auto;text-align:left;">
    		<p>Vous avez saisi : </p>
     
    			<p>Report : <%=request.getParameter("reports")+".rptdesign" %></p>
     
     
    		<p>Per tornare a l'elenco dei reports : <a href="./do">qui</a></p>
    		<p>Per stampare il report, <a href="<%= request.getContextPath( ) + "/frameset?__report="+request.getParameter("reports")+".rptdesign&sample=my+parameter" %>">qui</a></p>
    	</div>
     
    </body>

    Je ne sais pas comment implementer mon target dans mon cas.

    j'ai essaye dans la liste deroulante, sans succes. Cela m'affiche la page de resultat mais je n'ai plus mon menu.

  7. #7
    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
    Il y avait pourtant un exemple...
    L'attribut "target" est lié à la balise <form>

  8. #8
    Membre régulier
    Inscrit en
    Mars 2010
    Messages
    100
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 100
    Points : 80
    Points
    80
    Par défaut
    pardon, oui
    je viens de m'en apercevoir
    je ne regardais que les liens hors form

    je teste immediatement

  9. #9
    Membre régulier
    Inscrit en
    Mars 2010
    Messages
    100
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 100
    Points : 80
    Points
    80
    Par défaut
    toujours pareil.

    de ce que je comprends de mon probleme, c'est que j'ai

    - une page de resultat (frameResult.jsp) qui contient
    1. une page menu (forms.jsp)
    2. une page report (formResult.jsp), qui affichera un rapport en fonction du nom choisi dans le menu


    - une servlet qui balade les valeurs jusqu'a frameResult.jsp

    et donc en fait je n'ai plus de lien avec ma page report qui n'a forcement aucune autre valeur que NULL.

  10. #10
    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
    Pour moi, avec une frame, tu n'as pas à envoyer autre chose que la page résultat.
    Donc, globalement, ta servlet va récupérer les paramètres envoyés par l'option du menu et "juste" afficher la page résultat (sans se poser de question sur le "où" ça s'affiche, surtout pas renvoyer un frame ! tu es déjà dedans, ça suffit)

    Regarde l'exemple que je t'ai envoyé, tu le décompresses et tu lance la page frame.html.
    Là, c'est du statique, mais globalement, c'est comme l'exemple avec le <form>

  11. #11
    Membre régulier
    Inscrit en
    Mars 2010
    Messages
    100
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 100
    Points : 80
    Points
    80
    Par défaut
    ça marche!!

    en fait, j'invoquais mon appli par la page forms.jsp uniquement pour éviter d'avoir un report foireux

    alors qu'il fallait que j'appelle directement la page "framée".
    je n'ai plus qu'à faire un script pour ne rien afficher la 1ère fois

    Merci OButterlin de t'etre si vite occupé de mon problème.

    Bonne journée

  12. #12
    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
    Tu n'as pas besoin d'un script, si ton <frame> référence par défaut une page vide (pour la partie mainFrame), ça suffira...

    Bonne continuation

  13. #13
    Membre régulier
    Inscrit en
    Mars 2010
    Messages
    100
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 100
    Points : 80
    Points
    80
    Par défaut
    Non, dans mon cas, je recupere une page deja remplie mais pleine de variables qui attendent les valeurs transmises par la servlet.

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 17/01/2013, 22h59
  2. Contenu dynamique selon le Menu
    Par laure07 dans le forum Langage
    Réponses: 2
    Dernier message: 13/10/2010, 11h50
  3. Menu de largeur fixe, contenu dynamique
    Par Mike91 dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 26/07/2010, 22h44
  4. Réponses: 0
    Dernier message: 19/01/2010, 11h59
  5. Activer une Popup depuis un menu dynamique !
    Par marynes dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 26/04/2008, 13h51

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