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 :

[richfaces] sauvegarder l'état d'un composant


Sujet :

JSF Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Inscrit en
    Janvier 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 8
    Par défaut [richfaces] sauvegarder l'état d'un composant
    Bonjour,

    Je suis débutant en JSF et j'aimerai utiliser un tabPanel de richfaces dans une de mes applications, mais je n'arrive pas à sauvegarder l'état du composant. (Je ne suis pas sur qu'il s'agisse d'un problème richfaces, c'est peut être aussi un probleme de compréhension générale de JSF de ma part.)
    Par exemple:
    Je crée une page contenant un tabPanel avec 2 onglets. Le deuxieme onglet (que je selectionne) contient une richfaces dataTable avec un commandButton sur chaque ligne declenchant la navigation sur la page de detail. Sur la page de détail j'ai un commandLink qui déclenche une navigation sur la page principale, mais à chaque fois le premier onglet est sélectionné et non le 2ème.
    Je pourrai simplement enregistrer l'index du dernier onglet sélectionné mais il y'a encore des comboBox etc à ajouter et j'aimerai que jsf sauvegarde l'état de la view pour moi comme ça devrait être le cas d'après ma documentation.
    J'ai fait le test avec la méthode de sauvegarde "client" et "server" mais sans effet.
    J'ai lu quelque part qu'il faut utiliser un backing bean pour sauvegarder le composant mais je n'ai pas trouvé comment faire.

    Code de la page de départ a.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
    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
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    <%@page contentType="text/html"%>
    <%@page pageEncoding="UTF-8"%>
     
    <%@taglib prefix="f" uri="http://java.sun.com/jsf/core"%>
    <%@taglib prefix="h" uri="http://java.sun.com/jsf/html"%>
    <%@ taglib uri="http://richfaces.org/a4j" prefix="a4j"%>
    <%@ taglib uri="http://richfaces.org/rich" prefix="rich"%>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
     
    <%--
        This file is an entry point for JavaServer Faces application.
    --%>
     
    <html>
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
            <title>JSP</title>
        </head>
        <body>
            <f:view >
                <%@ include  file="/WEB-INF/jspf/menu.jspf"%>  
     
                <rich:tabPanel switchType="server"  >
                    <rich:tab label="A" >
                        <h:form>
                            <rich:dataTable value="#{RequestBean1.revendeurs}" var="e" id="showDiv">
     
                                <rich:column>
                                    <f:facet name="header">
                                        <h:outputText value="Pays"></h:outputText>
                                    </f:facet>
                                    <h:outputText value="#{e.pays}"></h:outputText>
                                </rich:column>
     
                                    <f:facet name="header">
                                        <h:outputText value="Nom"></h:outputText>
                                    </f:facet>
                                    <h:outputText value="#{e.nom}"></h:outputText>
                                </rich:column>
                                <rich:column>
                                    <f:facet name="header">
                                        <h:outputText value="Prenom"></h:outputText>
                                    </f:facet>
                                    <h:outputText value="#{e.prenom}"</h:outputText>
                                </rich:column>
     
     
                            </rich:dataTable>
                        </h:form>
                    </rich:tab>
     
                    <rich:tab label="B">
     
                        <h:form>
     
                            <rich:dataTable value="#{RequestBean1.revendeursPerso}" var="e"  >
                                <rich:column>
                                    <f:facet name="header">
                                        <h:outputText value="Pays"></h:outputText>
                                    </f:facet>
                                    <h:outputText value="#{e.pays}"></h:outputText>
                                </rich:column>
     
                                <rich:column>
                                    <f:facet name="header">
                                        <h:outputText value="Nom"></h:outputText>
                                    </f:facet>
                                    <h:outputText value="#{e.nom}"></h:outputText>
                                </rich:column>
                                <rich:column>
                                    <f:facet name="header">
                                        <h:outputText value="Prenom"></h:outputText>
                                    </f:facet>
                                    <h:outputText value="#{e.prenom}"></h:outputText>
                                </rich:column>
     
     
                                <rich:column>
                                    <f:facet name="header">
                                        <h:outputText value="Détail"></h:outputText>
                                    </f:facet>
                                    <h:commandButton action="#{RequestBean1.showDetail}" value="Détail"></h:commandButton>
                                </rich:column>
                                <f:facet name="footer">
                                    <rich:datascroller pageIndexVar="pageIndex" pagesVar="pages">
                                        <f:facet name="pages">
                                            <h:outputText value="#{pageIndex} /
                                            #{pages}"></h:outputText>
                                        </f:facet>
                                    </rich:datascroller>
                                </f:facet>
                            </rich:dataTable>
                        </h:form>
     
                    </rich:tab>
     
                </rich:tabPanel>
     
     
            </f:view>
        </body>
    </html>
    La page de détail b.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
    39
    40
    41
    42
    43
    44
    45
    46
    47
    <%@page contentType="text/html"%>
    <%@page pageEncoding="UTF-8"%>
     
    <%@taglib prefix="f" uri="http://java.sun.com/jsf/core"%>
    <%@taglib prefix="h" uri="http://java.sun.com/jsf/html"%>
    <%@ taglib uri="http://richfaces.org/a4j" prefix="a4j"%>
    <%@ taglib uri="http://richfaces.org/rich" prefix="rich"%>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
     
    <%--
        This file is an entry point for JavaServer Faces application.
    --%>
     
    <html>
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
            <title>JSP Page</title>
        </head>
        <body>
            <f:view >
                <%@ include  file="/WEB-INF/jspf/menu.jspf"%>  
                <h:form>
                    <rich:dataTable value="#{RequestBean1.detailsVentePerso}" var="e" rows="2" id="showDiv">
     
                        <rich:column>
                            <f:facet name="header">
                                <h:outputText value="Reference"></h:outputText>
                            </f:facet>
                            <h:outputText value="#{e[0]}"></h:outputText>
                        </rich:column>
                        <rich:column>
                            <f:facet name="header">
                                <h:outputText value="Quantité"></h:outputText>
                            </f:facet>
                            <h:outputText value="#{e[1]}"></h:outputText>
                        </rich:column>
     
                    </rich:dataTable>
     
               <h:commandLink action="retour">ret</h:commandLink>
     
                </h:form>
     
            </f:view>
        </body>
    </html>
    Mes navigation rules :

    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
     <navigation-rule>
            <from-view-id>/a.jsp</from-view-id>
            <navigation-case>
                <from-outcome>showdetail</from-outcome>
                <to-view-id>/b.jsp</to-view-id>
            </navigation-case>
        </navigation-rule>
     
        <navigation-rule>
            <from-view-id>/b.jsp</from-view-id>
            <navigation-case>
                <from-outcome>retour</from-outcome>
                <to-view-id>/a.jsp</to-view-id>
            </navigation-case>
        </navigation-rule>

    Merci d'avance.

  2. #2
    Membre habitué
    Inscrit en
    Janvier 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 8
    Par défaut
    J'ai trouvé comment faire à l'aide de JDeveloper. Vive l'attribut binding.

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

Discussions similaires

  1. [JComboBox] sauvegarder l'état d'un composant
    Par ralf091 dans le forum Composants
    Réponses: 7
    Dernier message: 15/02/2008, 16h44
  2. enregistrer l'état d'un composant
    Par wbagg2 dans le forum Composants VCL
    Réponses: 4
    Dernier message: 07/05/2006, 15h54
  3. [Strategie] Sauvegarde d'état
    Par nicolou dans le forum Servlets/JSP
    Réponses: 5
    Dernier message: 20/03/2006, 17h08
  4. Réponses: 1
    Dernier message: 05/10/2005, 12h33
  5. [IDE][VS.NET] Comment sauvegarder l'état des 'Region' ?
    Par CkurcK dans le forum Contribuez
    Réponses: 2
    Dernier message: 23/02/2004, 14h33

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