forcer le rafraichissement
Hello,
J'ai dans ma page JSF ajouté la possibilité d'ajouter un élément dans une liste, lorsque l'utilisateur les données sont remplis à partir des données séléctionnés (l'utilisateur modifie ensuite ces données pour qu'elles correspondent aux nouvelles données) -je sais pas si c'est assez clair-
Tout ce passe bien pour l'ajout qui se fait par le biais de cette méthode
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
|
public void addLinkedLocalisation(ActionEvent event) {
if (mainParcelle != null) {
Localisation newLocalisation = new Localisation();
newLocalisation.setAdresse(selectedParcelle.getAdresse());
newLocalisation.setCoordonneeX(selectedParcelle.getCoordonneeX());
newLocalisation.setCoordonneeY(selectedParcelle.getCoordonneeY());
newLocalisation.setLieuDit(selectedParcelle.getLieuDit());
newLocalisation.setNoDetache(selectedParcelle.getNoDetache());
newLocalisation.setNoParcelle(selectedParcelle.getNoParcelle());
newLocalisation.setNoSecteur(selectedParcelle.getNoSecteur());
newLocalisation.setProvenanceCoordonnees(selectedParcelle.getProvenanceCoordonnees());
newLocalisation.setSurfaceParcelle(selectedParcelle.getSurfaceParcelle());
newLocalisation = remoteParcelleDao.save(newLocalisation);
mainParcelle.getParcellesDetachees().add(newLocalisation);
remoteParcelleDao.update(mainParcelle);
List<LocalisationBean> beans = this.rowSelectControllerLocalisation.getLocalisationInventory();
beans.add(new LocalisationBean(newLocalisation));
this.rowSelectControllerLocalisation.setLocalisationInventory(beans);
this.selectedParcelle = mainParcelle;
}
} |
A la fin du traîtement je fais un this.selectedParcelle = mainParcelle;
pour tenter de récupérer les données lors de l ouverture de la page (je cherche à récupérer les données de l'élément séléctionner avant l'ouverture)
Cependant le formulaire (this.selectedParcelle) contient toujours les données que l'utilisateur vient de rentrer
Voici le code JSF correspondant
Code:
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
|
<ice:panelTab label="Localisation">
<ice:panelGrid columns="3">
<ice:outputText value="Lieu dit"></ice:outputText>
<ice:inputText value="#{sessionBean.selectedParcelle.lieuDit}"></ice:inputText>
<ice:outputText value=""></ice:outputText>
<ice:outputText value="Coordonnee x"></ice:outputText>
<ice:inputText value="#{sessionBean.selectedParcelle.coordonneeX}" id="coordonneeX">
<f:validateLongRange maximum="600000" minimum="530000"/>
</ice:inputText>
<ice:message style="color: red;" id="coordonneeXError" for="coordonneeX" />
<ice:outputText value="Coordonnee y"></ice:outputText>
<ice:inputText value="#{sessionBean.selectedParcelle.coordonneeY}" id="coordonneeY">
<f:validateLongRange maximum="210000" minimum="140000"/>
</ice:inputText>
<ice:message style="color: red;" id="coordonneeYError" for="coordonneeY"/>
<ice:outputText value="Provenance coordonnees"></ice:outputText>
<ice:inputText value="#{sessionBean.selectedParcelle.provenanceCoordonnees}"></ice:inputText>
<ice:outputText value=""></ice:outputText>
<ice:outputText value="No secteur"></ice:outputText>
<ice:inputText value="#{sessionBean.selectedParcelle.noSecteur}"></ice:inputText>
<ice:outputText value=""></ice:outputText>
<ice:outputText value="No parcelle"></ice:outputText>
<ice:inputText value="#{sessionBean.selectedParcelle.noParcelle}"></ice:inputText>
<ice:outputText value=""></ice:outputText>
<ice:outputText value="No detache"></ice:outputText>
<ice:inputText value="#{sessionBean.selectedParcelle.noDetache}"></ice:inputText>
<ice:outputText value=""></ice:outputText>
<ice:outputText value="Surface parcelle"></ice:outputText>
<ice:inputText value="#{sessionBean.selectedParcelle.surfaceParcelle}"></ice:inputText>
<ice:outputText value=""></ice:outputText>
<ice:outputText value="Rue"></ice:outputText>
<ice:inputText value="#{sessionBean.selectedParcelle.adresse.rue}"></ice:inputText>
<ice:outputText value=""></ice:outputText>
<ice:outputText value="No de rue"></ice:outputText>
<ice:inputText value="#{sessionBean.selectedParcelle.adresse.noDeRue}"></ice:inputText>
<ice:outputText value=""></ice:outputText>
<ice:outputText value="No postal"></ice:outputText>
<ice:inputText value="#{sessionBean.selectedParcelle.adresse.npa}"></ice:inputText>
<ice:outputText value=""></ice:outputText>
<ice:outputText value="Localite"></ice:outputText>
<ice:inputText value="#{sessionBean.selectedParcelle.adresse.localite}"></ice:inputText>
<ice:outputText value=""></ice:outputText>
<ice:outputText value="Parcelle liees"></ice:outputText>
<ice:dataTable id="localisation" var="localisation"
value="#{rowSelectControllerLocalisation.localisationInventory}"
rows="20"
border="2">
<ice:column>
<f:facet name="header">
<ice:outputText value="Id de la localisation" />
</f:facet>
<ice:rowSelector value="#{localisation.selected}"
selectionListener="#{rowSelectControllerLocalisation.rowSelectionListener}" />
<ice:outputText value="#{localisation.localisation.id}" />
</ice:column>
<ice:column>
<f:facet name="header">
<ice:outputText value="Lieu dit" />
</f:facet>
<ice:outputText value="#{localisation.localisation.lieuDit}" />
</ice:column>
<ice:column>
<f:facet name="header">
<ice:outputText value="Coordonee X" />
</f:facet>
<ice:outputText value="#{localisation.localisation.coordonneeX}" />
</ice:column>
<ice:column>
<f:facet name="header">
<ice:outputText value="Coordonee Y" />
</f:facet>
<ice:outputText value="#{localisation.localisation.coordonneeY}" />
</ice:column>
</ice:dataTable>
<ice:commandButton id="buttonAddLocalisation" value="Ajouter une parcelle liee" actionListener="#{sessionBean.addLinkedLocalisation}" />
<ice:outputLabel for=""> </ice:outputLabel>
<ice:outputLabel for=""> </ice:outputLabel>
<ice:outputLabel for=""> </ice:outputLabel>
<ice:outputLabel for=""> </ice:outputLabel>
</ice:panelGrid>
</ice:panelTab> |