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 :

Selection d'élements dans une multibox


Sujet :

Struts 1 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    161
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2006
    Messages : 161
    Par défaut Selection d'élements dans une multibox
    Bonjour,
    je récupère une liste d'éléments à partir d'un BD mais le problème c'est que je ne sait pas comment ensuite pouvoir recupérer la liste d'éléments filtré avec ce que l'utilisateur à selectionné.

    Mon ActionForm qui récupère la liste de la BD

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    ...
                while(resultSet.next()){
            		//on récupère la commande
            		String res = resultSet.getString(1);
            		//on crée une commande
            		Commande com = new Commande();
            		com.setNom(res);
            		// on ajoute la commande à la liste
            		commandesList.add(com);
            	}
    ...
    
            session.setAttribute("commandesList", commandesList);
            return (mapping.findForward("success"));
    Ma jsp qui affiche la liste
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <logic:iterate id="commandesbean"  name="commandesList">
         <p>
         <bean:write name="commandesbean" property="nom"/>
         <br/></p>
    </logic:iterate>
     
    <logic:iterate id="commandesList"  name="commandeForm">
    	<bean:define id="commandebean" name="commandesList" type="lara.Commande"/>
    	 <p>
    	<html:multibox property="selectedCommandes"><bean:write name="commandebean" property="nom"/></html:multibox>
    	<br/>
    	</p>
    </logic:iterate>
    Le premier iterate fonctionne, il m'affiche ma liste de commandes.
    Le deuxième iterate ne fonctionne pas, j'ai essayer un peu tout..., c'est très loin de la solution.


    Mon ActionForm que je voudrait utiliser :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    /**
             * Commandes selectionné
             */
        private String[] selectedCommandes;
    A partir de mon "commandeList" que je récupère je voudrait afficher une multibox qui m'affiche cette liste et qui me récupère les valeurs sélectionné grâce a l'actionForm et selectedCommandes. Je n'arrive pas a combiner la liste que je récupère par la session et le ActionForm.. J'ai essayé de trouver des exemples similaires mais je n'est pas trouvé.

    Merci de votre aide, je ne sait pas trop si c'est assez clair...

  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
    Tout simplement comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <logic:iterate id="commandesbean" name="commandesList">
       <bean:write name="commandesbean" property="nom"/>
       <html:multibox property="selectedCommandes">
          <bean:write name="commandesbean" property="nom"/>
       </html:multibox>
    </logic:iterate>
    Pour que cela fonctionne, il faut mettre le tag logic:iterate dans un tag html:form avec dans l'attribut action le path de l'Action liée au form-bean commandeForm.

    Sans oublier d'ajouter dans l'ActionForm l'initialisation du tableau de String selectedCommandes dans la méthode reset comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    public void reset(ActionMapping mapping, HttpServletRequest request)
    {
        this.selectedCommandes=new String[0] ;
    }

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    161
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2006
    Messages : 161
    Par défaut
    Merci bien, ca marche.
    Je met le code résultat pour les personnes qui voudrait avoir un petit exemple.

    Dans ma JSP :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <html:form action="choixCommandes.do" method="POST">
    					<logic:iterate id="commandesbean" name="commandesList">
    					   <bean:write name="commandesbean" property="nom"/>
    					   <html:multibox property="selectedCommandes">
    					      <bean:write name="commandesbean" property="nom"/>
    					   </html:multibox>
    					</logic:iterate>
        			</html:form>
    Dans le struts-config :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    <action	path="/choixCommandes"
    				name="commandeForm"
    				type="ChoixCommandesAction"
    				scope="request" >
    				<forward name="success" path="/confirmation.jsp" />
    	</action>
            <action path="/listeCommandes"
    		   type="ListeCommandesAction"
    		   scope="request" >
    	<forward name="success" path="/choixCommande.jsp" />
    </action>
    L'action listeCommandes récupère la liste des commandes sur la BD et l'action choixCommandes permet de récupérer la liste des commandes selectionné (cette action n'est pas encore réalisé mais ca ne serait tarder).

    Merci encore de ton aide.

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

Discussions similaires

  1. [Generics] ajouter un élement dans une liste typée
    Par anitshka dans le forum Collection et Stream
    Réponses: 14
    Dernier message: 06/02/2007, 11h04
  2. [MySQL] selection avec un * dans une bdd
    Par leodi dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 24/06/2006, 02h58
  3. Suite au choix dans une multibox
    Par discogarden dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 27/03/2006, 20h43
  4. [VBA-E]Interdire la selection de cellule dans une feuille
    Par Tartenpion dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 09/03/2006, 23h24
  5. Problème select MAX(annee) dans une requête
    Par grisounette dans le forum Requêtes et SQL.
    Réponses: 7
    Dernier message: 28/10/2004, 17h36

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