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

Struts 1 Java Discussion :

Lister les entrées d'une table SQL au démarrage


Sujet :

Struts 1 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 19
    Par défaut Lister les entrées d'une table SQL au démarrage
    Bonjour,

    Je redécouvre Struts mais j'ai un peu perdu les bases.
    En fait je souhaite faire une application assez simple : lister le contenu d'une table (pour commencer) qui se trouve dans une base SQL Server.

    J'ai donc utilisé Hibernate pour faire le mapping, ça c'est OK. Les .hbm et les classes générées sont dans le package bean.
    Admettons que j'ai une table A avec deux champs : A(id, name).
    J'ai créé la classe HibernateUtil (dans le package util) qui récupère les SessionFactory.

    Maintenant, il me reste à coder la classe action que je vais nommer ListeAction (dans le package action) et la page index.jsp qui va s'occuper de lister le contenu de la table A pour l'afficher dans un tableau.
    Et là où j'ai le plus de mal, c'est le fichier de config struts-config.xml pour le mapping des actions.

    Merci d'avance si quelqu'un peut me venir en aide

    Salutations.

    K.

  2. #2
    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
    En fait, pour que l'Action s'exécute en premier, il faut définir, dans le struts-config.xml, un forward global vers l'Action ListeAction :
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <global-forwards>
       <forward name="liste" path="/listeAction.do"/>
    </global-forwards>
    Ensuite, il faut définir le mapping de l'Action listeAction :
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <action-mappings>
    	<action path="/listeAction" type="action.ListeAction">
    		<forward name="success" path="/liste.jsp"/>
    	</action>
    <action-mappings>
    et dans la jsp index.jsp :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <logic:forward name="liste"/>

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 19
    Par défaut
    Ok, merci bien.

    Maintenant que j'ai réussi à afficher ma liste, je souhaite mettre un lien pour chaque ligne avec comme paramètre l'attribut id.

    Voilà à quoi ressemble mon code dans la JSP qui liste les objets A :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <logic:iterate id="objA" name="listeA">
                <tr>
                    <td><bean:write name="objA" property="aId"/></td>
                    <td><bean:write name="objA" property="aName"/></td>
                    <td><html:link action="listeB" paramName="aId" paramProperty="aId">Liste objets B</html:link></td>
                </tr>
    </logic:iterate>
    L'action listeB fait appelle à ListeBAction.java dont la fonction execute est codée comme suit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
        public ActionForward execute(ActionMapping mapping, ActionForm form,
                HttpServletRequest request, HttpServletResponse response)
                throws Exception {
     
            String aId = request.getParameter("aId");
            List<B> listeB = null;
            //remplissage de listeB
            request.setAttribute("listeB", listeB);
            return mapping.findForward(SUCCESS);
        }
    Je pensais pouvoir récupérer le paramètre passé dans le <html:link> mes le request.getParameter(..) me retourne null.

    Savez vous d'où vien mon erreur ?

    Merci d'avance.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 19
    Par défaut
    C'est bon, je m'en suis sorti en faisant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <html:link action="listeB?var=${obA.aId}">Liste objets B</html:link>
    a+

  5. #5
    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
    La solution avec les attributs paramId, paramName et paramProperty est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <html:link action="listeB" paramId="var" paramName="obA" paramProperty="aId">

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

Discussions similaires

  1. Req pour lister les index d'une table ?
    Par nanou9999 dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 04/05/2009, 11h08
  2. [SQL-Server] Lister les colonnes d'une table
    Par tintin31000 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 15/10/2008, 11h33
  3. lister les champs d'une table
    Par papawemba dans le forum Requêtes
    Réponses: 2
    Dernier message: 24/07/2006, 15h53
  4. [VB6/ACCESS] Lister les champs d'une table
    Par Sytchev3 dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 07/06/2006, 19h01
  5. [MySQL] lister les occurrences d'une table
    Par youyoule dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 07/09/2005, 20h37

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