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 :

Envoyer un paramètre vers un Managed Bean


Sujet :

JSF Java

  1. #1
    Membre très actif
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    923
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2008
    Messages : 923
    Par défaut Envoyer un paramètre vers un Managed Bean
    Bonjour à tous,

    Après quelques jours de recherche, je viens à vous pour demander une petite aide, je pense qu'il doit être simple mais je dois avoir raté quelque chose.... En fait je cherche à passer un paramètre de ma DataTable vers le Managed Bean associé.

    C'est le début d'un grand projet, et il me manque cette "technique" pour continuer mon développement...

    Pour m'expliquer, j'ai une DataTable avec quelques colonnes, et lorsque je fais le clique sur une colonne j'aurais besoin de passer la valeur de une de ces colonnes ("compte" dans ce cas) vers mon serveur pour effectuer un traitement.

    Pour tester mon code j'ai fait un JOptionPane qui doit renvoyer la valeur affectée, mais au lieu de m'envoyer la valeur de la colonne "compte" j'ai comme réponse une valeur qui je pense être l'"Id" de la ligne sélectionnée (quelque chose comme "package.class$objet@183f012").

    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    <h:body styleClass="fond">
    	<h:form>
    		<ui:include src="/header.xhtml" />
    		<p:dataTable id="comptes" var="osdComptes" value="#{osdJourBean.listeComptes}" selection="#{osdJourBean.selectedCompte}" rowKey="#{osdComptes.compte}" selectionMode="single" scrollable="true" scrollHeight="300" >  
    			<p:ajax event="rowSelect" listener="#{osdJourBean.testeVoid}" />
     
    			<f:facet name="header">  
    		        Liste des OSD's du jour
    		    </f:facet>
    		    <p:column headerText="T" footerText="T" style="width:3%" >  
    		        <h:outputText value="#{osdComptes.traite}" />  
    		    </p:column>  
    		    <p:column headerText="Agence" footerText="Agence" style="width:7%" >  
    		        <h:outputText value="#{osdComptes.agence}" />  
    		    </p:column>  
    		    <p:column headerText="GC" footerText="GC" style="width:5%" >  
    		        <h:outputText value="#{osdComptes.gc}" />  
    		    </p:column>  
    		    <p:column headerText="Compte" footerText="Compte" style="width:15%" >  
    		        <h:outputText value="#{osdComptes.compte}" />  
    		    </p:column>    
    		    <p:column headerText="Quantité" footerText="Quantité" style="width:7%" >  
    		        <h:outputText value="#{osdComptes.nb}" />  
    		    </p:column>  
    		    <p:column headerText="Montant" footerText="Montant" style="width:20%" >  
    		        <h:outputText value="#{osdComptes.montant}" />  
    		    </p:column>  
    		    <p:column headerText="Intitulé" footerText="Intitulé" >  
    		        <h:outputText value="#{osdComptes.intitule}" />  
    		    </p:column> 
    		</p:dataTable>
    		<br />
     
    	</h:form>
    </h:body>

    Voilà mon Managed 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
    @ManagedBean
    @SessionScoped
    public class OsdJourBean implements Serializable {
    	private static final long serialVersionUID = 3808941745816816737L;
            private String selectedCompte;
     
    	public String getSelectedCompte(){
    		return this.selectedCompte;
    	}
     
    	public void setSelectedCompte(String selectedCompte){
    		this.selectedCompte = selectedCompte;
    	}
     
            public void testeVoid(SelectEvent event){
    		JOptionPane.showMessageDialog(null, this.selectedCompte);
    	}
    }

    Est-ce que vous pouvez m'aider, svp? Pour ce projet j'utilise JSF 2.1 avec Prime Faces 3.5, tout dans Eclipse...
    Je vous remercie d'avance


    Marc.

  2. #2
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations forums :
    Inscription : Mai 2011
    Messages : 790
    Par défaut
    pour les évènements dans un dataTable je pense que tu peux seulement sélectionner une ligne avec l'attribut f:setActionPropertyListener pour faire un traitement particulier.

    Sinon il existe d'autre forme tel que tu parcours ton dataTable afin de faire un traitement aussi sur ta ligne ou la colonne

    Bon courage !

Discussions similaires

  1. Envoyer paramètre vers un autre gui
    Par lawlou dans le forum Interfaces Graphiques
    Réponses: 1
    Dernier message: 30/05/2015, 16h43
  2. Réponses: 1
    Dernier message: 10/03/2011, 16h47
  3. [managed-bean] constructeur avec un paramétre.
    Par Chritofff dans le forum JSF
    Réponses: 2
    Dernier message: 22/03/2010, 13h52
  4. [ServerSocket] Envoyer un message vers un client
    Par Michel_57 dans le forum Web & réseau
    Réponses: 4
    Dernier message: 06/08/2004, 23h01
  5. [socket] envoyer des données vers un port com
    Par Slimer dans le forum Entrée/Sortie
    Réponses: 4
    Dernier message: 20/07/2004, 17h35

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