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

JSF Java Discussion :

Comment faire des itérations avec JSF & richFaces?


Sujet :

JSF Java

  1. #1
    Membre à l'essai
    Inscrit en
    Mai 2008
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 17
    Points : 13
    Points
    13
    Par défaut Comment faire des itérations avec JSF & richFaces?
    Bonjour,
    J'essaye de gérer une liste de réservation que je récupère de ma bean (depuis ma BD) et je voudrais annuler ou valider une sélection de cette liste. J'ai essayé avec un dataGrid mais à chaque fois que je clique sur l'un de deux boutons, la méthode valide ou annule la dernière réservation, c'est très logique mais je ne sais pas comment faire autrement . J'ai besoin de votre aide et merci d'avance.
    Voici mon code:
    ma jsp:
    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
     
    <h:form>
    		<rich:dataGrid columns="2" elements="6"
    			onRowMouseOver="this.style.backgroundColor='#F1F1F1'"
    			onRowMouseOut="this.style.backgroundColor='#{a4jSkin.tableBackgroundColor}'"
    			cellpadding="0" cellspacing="0" width="700" border="0" var="record"
    			id="grid" value="#{Reservation.listeR}">
     
    			<rich:panel id="pan">
    				<a4j:form>
    					<f:facet name="header">
    						<h:outputText value="Id Reservation:  #{record.idreservation}" />
    					</f:facet>
    					<h:panelGrid columns="2">
    						<h:outputText value="Id Hotel: " />
    						<h:outputText value="#{record.idhotel}" />
     
    						<h:outputText value="Date début: " />
    						<h:outputText value="#{record.date_debut}" />
     
     
    						<h:outputText value="Date fin: " />
    						<h:outputText value="#{record.date_fin}" />
     
     
    						<a4j:commandButton action="#{Reservation.validerReservation}"
    							value="valider" reRender="grid,pan"></a4j:commandButton>
    						<rich:spacer width="20"></rich:spacer>
    						<a4j:commandButton action="#{Reservation.del}" value="annuler"></a4j:commandButton>
    					</h:panelGrid>
    				</a4j:form>
     
     
    			</rich:panel>
    			<f:facet name="footer">
    				<rich:datascroller></rich:datascroller>
    			</f:facet>
    		</rich:dataGrid>
    ma bean:
    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
    16
    17
    18
     
    public ArrayList<Reservation> listReservation() throws SQLException
    	{
    		ArrayList<Reservation> result = new ArrayList<Reservation>();
    		base = new MyDBManager();
    		base.connection();		
    		String request = "SELECT * FROM `reservation` WHERE `validation` LIKE 'attente'";
    		ResultSet rset = base.sendSelectRequest(request);
    		while (rset.next())
    		{
    			idreservation= rset.getInt("idreservation");
    			idmembre = rset.getInt("idmembre");
    			idhotel = rset.getInt("idhotel");
    			date_debut = rset.getString("date_debut");
    			date_fin = rset.getString("date_fin");
    			result.add(new Reservation(idreservation,idmembre,idhotel,date_debut,date_fin));		
    		}
    		return result;

  2. #2
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Points : 7 275
    Points
    7 275
    Par défaut
    Bonjour,

    Je pense que ce doit être le code des tes méthodes del et validerReservation qui ne doit pas prendre correctement le bon élément de la liste...
    Dans une datatable, tu peux connaitre l'élément affiché dans la ligne où l'utilisateur a cliqué (3 solutions pour ça, dans la FAQ).
    Je ne sais pas si ces solutions fonctionnent avec un DataGrid...
    Si cela ne fonctionne pas, tu peux ajouter un <f:param> à tes commandButton pour donner au bean le record.

  3. #3
    Membre à l'essai
    Inscrit en
    Mai 2008
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 17
    Points : 13
    Points
    13
    Par défaut
    Voilà, j'ai trouvé la solution ici:
    http://balusc.blogspot.com/2006/06/u...atatables.html
    merci romaintaz

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

Discussions similaires

  1. comment faire des menus avec ASP MVC
    Par beaudelaire dans le forum ASP.NET MVC
    Réponses: 7
    Dernier message: 17/05/2011, 16h23
  2. Comment faire la sérialisation avec jsf
    Par nakry dans le forum JSF
    Réponses: 0
    Dernier message: 12/05/2011, 17h56
  3. comment faire des schémas avec latex
    Par abdali dans le forum Tableaux - Graphiques - Images - Flottants
    Réponses: 6
    Dernier message: 06/06/2008, 17h25
  4. Comment faire des test avec boost::test
    Par cdm1024 dans le forum Boost
    Réponses: 5
    Dernier message: 19/02/2008, 18h37
  5. Comment faire des liens avec excel ?
    Par Vinceeboy dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 04/10/2007, 20h45

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