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 :

Inclure une Page dans une autre suite à une action AJAX


Sujet :

JSF Java

  1. #1
    Nouveau membre du Club
    Inscrit en
    Décembre 2006
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 33
    Points : 25
    Points
    25
    Par défaut Inclure une Page dans une autre suite à une action AJAX
    Bonjour,
    j'ai une data table où j'affiche une liste d'objets "listObj" et j'ai un bouton a4j qui va m'apporter la liste des sous objets "listSousObj" d'un objet sélectionné à partir de la datatable.
    le problème est : je veux afficher le résultat juste en dessous de la première liste dans la même page.
    Est-ce que vous avez des propositions car j'ai pas trouvé de solutions?
    Merci d'avance.

  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
    tu peux mettre les composants dans un panelGroup avec une condition sur rendered, entouré le tout d'un outputPanel ou autre panelGroup et faire reRender sur ce dernier.

    Je suppose que tu utilise Richfaces

  3. #3
    Nouveau membre du Club
    Inscrit en
    Décembre 2006
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 33
    Points : 25
    Points
    25
    Par défaut
    oui, j'utikise richfaces et a4j pour les requêtes ajax.mais j'ai pas bien saisie ta remarque.

  4. #4
    Nouveau membre du Club
    Inscrit en
    Décembre 2006
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 33
    Points : 25
    Points
    25
    Par défaut
    voici le code que j'utilise pour afficher la liste des Etapes d'un projets et suite à l'action listPhaseEtape je veux afficher la liste des phases de l'etape selectionnée:

    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
     
    <rich:tabPanel switchType="ajax" rendered="true" >
    				<rich:tab id="infoPlanning" label="Informations Planning" bypassUpdates="true" >
    					...
    					<!-- List Etapes -->
    					<rich:simpleTogglePanel id="etapeListContainer" switchType="ajax" label="Liste des Etapes" opened="false">
    						<a4j:support event="onclick" action="#{projectctrl.listEtapeProjet}" reRender="etape" />
    						<a4j:region id="etape">
    							<ui:insert name="etapeList">
    								<ui:include src="FindAllEtapes.xhtml" />
    							</ui:insert>
    						</a4j:region>
    					</rich:simpleTogglePanel>
    					<rich:spacer height="20"/>
    					<!-- List Phases -->
    					<rich:simpleTogglePanel id="phaseListContainer" switchType="ajax" label="Liste des Phases" opened="false">
    						<!-- 
    						<a4j:support event="onclick" action="#{etapectrl.listPhaseEtape}" reRender="phase">
    						</a4j:support>-->
    						<a4j:region id="phase" rendered="true">
    							<ui:insert name="phaseList">
    								<ui:include src="FindAllPhases.xhtml" />
    							</ui:insert>
    						</a4j:region>
    					</rich:simpleTogglePanel>
    					<rich:spacer height="20"/>
    					<!-- List Tâches -->
    					<rich:simpleTogglePanel id="tacheListContainer" switchType="ajax" label="Liste des Tâches" opened="false">
    						<a4j:region id="tache">
    							<ui:insert name="tacheList">
    								<ui:include src="FindAllTache.xhtml" />
    							</ui:insert>
    						</a4j:region>
    					</rich:simpleTogglePanel>
    				</rich:tab>
    				<rich:tab id="ganttPlanning" label="Diagramme de Gantt">
    					Diagramme de Gantt...
    				</rich:tab>
    			</rich:tabPanel>
    FindAllEtapes.xhtml

    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
     
    <rich:dataTable value="#{etapectrl.etapeapos}" var="etape" id="listEtape"
    					width="80%" onRowMouseOver="this.style.backgroundColor='#F1F1F1'"
    					onRowMouseOut="this.style.backgroundColor='#{a4jSkin.tableBackgroundColor}'"
    					columnClasses="center" rows="10" reRender="ds">
    					<f:facet name="header">
    						<h:outputText value="#{msg.LABEL_ETAPE_LISTE_INTITULE}" />
    					</f:facet>
    					<rich:column width="90px">
    						<f:facet name="header">
    							<h:outputText value="#{msg.LABEL_ETAPE_EDITION_TITLE}" />
    						</f:facet>
     
    						<a4j:commandButton id="link" action="EditEtape"
    							image="/images/edit02.png" style="height : 20px; width : 17px;">
    							<f:setPropertyActionListener value="#{etape}"
    								target="#{etapectrl.etapeapo}" />
    							<rich:toolTip>
    								<span style="white-space: nowrap"><h:outputText
    									value="#{msg.LABEL_ETAPE_MODIFICATION}" /></span>
    							</rich:toolTip>
    						</a4j:commandButton>
    						<rich:spacer height="2px" />
    						<a4j:commandButton id="link2" image="/images/supp1.png"
    							style="width : 18px; height : 20px;" reRender="table"
    							action="test">
    							<f:setPropertyActionListener value="#{etape}"
    								target="#{etapectrl.etapeapo}" />
    							<rich:toolTip>
    								<span style="white-space: nowrap"> <h:outputText
    									value="#{msg.LABEL_ETAPE_SUPPRESSION}" /></span>
    							</rich:toolTip>
    						</a4j:commandButton>
    						<rich:spacer height="2px" />
    						<a4j:commandButton id="phaseEtapeId"
    							action="#{etapectrl.listPhaseEtape}" image="/images/noatun.png"
    							style="width : 17px; height : 18px;">
    							<a4j:support event="onclick" action="#{etapectrl.listPhaseEtape}" reRender="phase">
    								<f:setPropertyActionListener value="#{etape}"
    								target="#{etapectrl.etapeapo}" />
    							</a4j:support><!-- 
    							<f:setPropertyActionListener value="#{etape}"
    								target="#{etapectrl.etapeapo}" />-->
    							<f:setPropertyActionListener value="#{etape.id}"
    								target="#{etapectrl.phaseCtrl.phaseapo.etapeId}" />
    							<f:setPropertyActionListener value="#{etape.intitule}"
    								target="#{etapectrl.phaseCtrl.phaseapo.etapeName}" />
    							<rich:toolTip>
    								<span style="white-space: nowrap"> Phases de l'Etape </span>
    							</rich:toolTip>
    						</a4j:commandButton>
    					</rich:column>
     
    					<rich:column filterBy="#{etape.intitule}" filterEvent="onkeyup"
    						sortBy="#{etape.intitule}">
    						<f:facet name="header">
    							<h:outputText value="#{msg.LABEL_ETAPE_INTITULE}" />
    						</f:facet>
    						<h:outputText value="#{etape.intitule}" />
    					</rich:column>
    					<rich:column filterBy="#{etape.dateDebutEtape}"
    						filterEvent="onkeyup" sortBy="#{etape.dateDebutEtape}">
    						<f:facet name="header">
    							<h:outputText value="#{msg.LABEL_ETAPE_DATE_DEBUT}" />
    						</f:facet>
    						<h:outputText value="#{etape.dateDebutEtape}">
    							<f:convertDateTime pattern="dd/MM/yyyy" />
    						</h:outputText>
    					</rich:column>
    					<rich:column filterBy="#{etape.dateFinEtape}" filterEvent="onkeyup"
    						width="150px">
    						<f:facet name="header">
    							<h:outputText value="#{msg.LABEL_ETAPE_DATE_FIN}" />
    						</f:facet>
    						<h:outputText value="#{etape.dateFinEtape}">
    							<f:convertDateTime pattern="dd/MM/yyyy" />
    						</h:outputText>
    					</rich:column>
    					<rich:column filterBy="#{etape.budgetEtape}" filterEvent="onkeyup"
    						sortBy="#{etape.budgetEtape}">
    						<f:facet name="header">
    							<h:outputText value="#{msg.LABEL_BUDGET_ETAPE}" />
    						</f:facet>
    						<h:outputText value="#{etape.budgetEtape}" />
    					</rich:column>
     
    					<f:facet name="footer">
    						<rich:datascroller id="ds"></rich:datascroller>
    					</f:facet>
    				</rich:dataTable>

  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
    un exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    <a4j:commandButton value="Changer page" reRender="pages">
    <a4j:actionparam name="page" value=#{!bean.showPage1} assignTo=#{bean.showPage1} />
    </a4j:commandButton> 
    <a4j:outputPanel id="pages">
    <h:panelGroup rendered="#{bean.showPage1}">
    <ui:include src="page1.xhtml" />
    </h:panelGroup>
    <h:panelGroup rendered="#{!bean.showPage1}">
    <ui:include src="page2.xhtml" />
    </h:panelGroup>
    </a4j:outputPanel>

Discussions similaires

  1. Réponses: 8
    Dernier message: 16/01/2014, 04h52
  2. Réponses: 14
    Dernier message: 03/05/2013, 23h11
  3. Rafraichir une page dans un autre onglet du navigateur
    Par pierre50 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 15/10/2012, 17h10
  4. Réponses: 2
    Dernier message: 18/04/2011, 14h00
  5. Affichage d'une page pendant le chargement d'une page
    Par johnson95 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 01/08/2008, 14h21

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