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 :

passage de parametre entre les pages JSF [Débutant(e)]


Sujet :

JSF Java

  1. #1
    Membre à l'essai
    Inscrit en
    Mars 2008
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 26
    Points : 23
    Points
    23
    Par défaut passage de parametre entre les pages JSF
    bonjours,

    je suis entrain de realiser un projet en utilisant JSF j'ai une page index qui affiche la liste des clients que j'ai dans la base de données et pour chaque enregistrement j'affiche à coté un lien vers ue page qui va faire la modification.

    lorsque je clique sur le lien Modifier je dois avoir les informations sur ce client.
    mon probleme est:

    je sais pas comment recuperer l'indetifiant du client choisit.
    je sais pas comment afficher les attributs de ce client(le nom prenom) qui sont recuperés de la page index dans la page modifier.jsf.

    merci.

  2. #2
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Points : 5 059
    Points
    5 059
    Par défaut
    salut,

    dans le lien ajoute un
    et si tu utilises un dataTable regarde dans la comment récuperer la ligne séléctioné..

  3. #3
    Membre à l'essai
    Inscrit en
    Mars 2008
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 26
    Points : 23
    Points
    23
    Par défaut
    oui j'utilise un datatable.
    peut on recuperer l'identifiant du client et non pas l'identifiant de la table?

  4. #4
    Membre à l'essai
    Inscrit en
    Janvier 2008
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 32
    Points : 19
    Points
    19
    Par défaut
    Bonjour;
    ici le code JSF page d'acceuil qui affiche la liste des clients
    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
    <h:form>
    <h:dataTable value="#{todoBean.toDoS}" var="todotodo">
    <h:column>
    	<f:facet name="header">
    		<h:outputText value="Title" />
    	</f:facet>
    		<h:outputText value="#{todotodo.title}" />
    </h:column>
    <h:column>
    	<f:facet name="header">
    		<h:outputText value="Update" />
    	</f:facet>
    	   <h:outputLink value="editToDo.jsp">
    		<h:outputText value="Edit" /> //lien pour éditer le client
    		<f:param value="#{todotodo.id}" name="toDoId" /> //l'id récupéré
    	   </h:outputLink>
    </h:column>
    </h:dataTable>
    </h:form>
    Le code de la JSF de l'edition edit.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
    		<f:view>
    		<h:form id="editToDoForm">
    			<h:panelGrid columns="2">
    				<h:outputText value="Id : "/>
    				<h:inputText  value="#{todoBean.toDo.id}"/>
    				<h:outputText value="Title : "/>
    				<h:inputText  value="#{todoBean.toDo.title}"/>
    				<h:outputText value="Body : "/>
    				<h:inputText  value="#{todoBean.toDo.body}"/>
                    <h:commandButton value="Submit" action="#{todoBean.updateToDoAction}"/>
    			</h:panelGrid>
    			</h:form>
     
    		</f:view>

    La classe todoBean est la suivante
    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
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    public class ToDoBean {
        private Logger log = Log.getLog(this);
        private String toDoId;
        private Collection toDos = null;
        private ToDo toDo;
        private ToDoServiceAble toDoService;
     
        /**
         * Constructor
         */
        public ToDoBean() {
            super();
            log.debug("#DDD############ Constructor");
            toDo = new ToDo();
        }
     
        /**
         * @return Return the toDo.
         */
        public ToDo getToDo() {
            return this.toDo;
        }
     
        public Collection getToDoS() {
            if (toDos == null) {
                try {
                    log.debug("#DDD############ toDos null --> service.getToDos");
                    toDos = toDoService.getToDoS();
                } catch (Exception e) {
                    log.error("#DDD############ Error when searching the todo list");
                }
            }
            return toDos;
        }
     
            public String getToDoId() {
            log.debug("#DDD############ getToDoId");
            return toDoId;
        }
    public String updateToDoAction() {
            log.debug("#DDD############ updateToDoAction()");
            try {
                this.toDoService.updateToDo(this.toDo);
                log.debug("#DDD############ updateToDoAction->success");
                return "success";
            } catch (JoTestException e) {
                e.printStackTrace();
                return "failure";
            }
        }
        /**
         * @param toDoId
         *        The toDoId to set.
         */
        public void setToDoId(String toDoId) {
            this.toDoId = toDoId;
            log.debug("#DDD############ setToDoId(-" + toDoId + "-)");
            if (toDoId != null && !toDoId.equals("")) {
                Integer id = new Integer(toDoId);
                try {
                    if (toDoService != null) {
                        toDo = toDoService.getToDo(id);
                    }
                } catch (JoTestException e) {
                    log.error("setToDoId, error :" + e);
                }
            }
        }
    voilà, j'espere que ca va t'aider
    Mima

  5. #5
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Points : 5 059
    Points
    5 059
    Par défaut
    la réponse existe dans la :FAQ: JSF; et tu trouvera trois façon de le faire, tu récupère toute la ligne, ton objet client avec tous ses paramètres..

  6. #6
    Membre à l'essai
    Inscrit en
    Mars 2008
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 26
    Points : 23
    Points
    23
    Par défaut
    EFFECTIVEMENT j'ai trouvé la solution dans la faq JSF merci pour l'aide.

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

Discussions similaires

  1. [Débutant] passage des données entre les pages
    Par midialzer dans le forum Silverlight
    Réponses: 1
    Dernier message: 11/06/2012, 14h26
  2. pb de navigation entre les pages jsf !
    Par mido_bc dans le forum JSF
    Réponses: 4
    Dernier message: 05/02/2009, 16h49
  3. pb passage de parametre d'un page jsf a un bean
    Par rasmusin dans le forum JSF
    Réponses: 1
    Dernier message: 07/05/2008, 12h36
  4. Réponses: 2
    Dernier message: 23/06/2006, 21h45
  5. passage de parametre entre deux page asp
    Par tomtom25 dans le forum ASP
    Réponses: 4
    Dernier message: 01/04/2005, 16h16

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