Używanie zarządzanej właściwości z CommandButton w Java Server Faces
Oprócz mojego pytania„Tworzenie strony„ Edytuj mój przedmiot ”w twarzach serwera Java z fasetkami” Chciałbym ukryć problem, który to zapewnił.
Po naciśnięciu przycisku commandButton identyfikator = 100 jest usuwany, a strona jest odświeżanaPrzed uruchamia nawet metodę, tak, oznacza to, że nie mam identyfikatora, gdy naciskam przycisk.
Jak to rozwiązać?
Posiadanie tej zarządzanej fasoli
public class BeanWithId implements Serializable {
private String id;
private String info;
private void populateInfo() {
info = "Some info from data source for id=" + id;
}
public String getId() { return id; }
public void setId(String id) {
this.id = id;
populateInfo();
}
public String getInfo() { return info; }
public void setInfo(String info) { this.info = info; }
public String save() {
System.out.println("Saving changes to persistence store");
return null; // no navigation
}
}
I dodawanie
<p><h:commandButton action="#{beanWithId.save}" value="Save" /></p>
Do mojej strony. Teraz mam również poprawne informacje w moim faces-config.xml i kiedy uzyskuję dostęp do mojej strony używając? ID = 100, otrzymuję poprawny przedmiot zwrócony.