Witam,
Mam mały problem podczas korzystania z JSF - Primefaces pierwszy przykład ze strony primefaces poniżej, sparwił mi wiele kłopotów i do dnia dzisiejszego nie znam sposobu by działał poprawnie. Mianowicie nie jest wywoływany setter i zmienna firstname nie jest ustawiany i nie znam przyczyny tego dziwnego przypadku:
<h:form id="form" prependId="false">
<p:panel header="New Person">
<h:panelGrid columns="3">
<p:inputText id="firstname" value="#{personBean.firstname}" />
<p:commandButton value="Start" update="display" />
<h:outputText id="display" value="#{personBean.firstname}" />
</h:panelGrid>
</p:panel>
</h:form>
Tutaj mam Beana:
@ManagedBean
@RequestScoped
public class PersonBean implements Serializable{
/**
*
*/
private static final long serialVersionUID = 1L;
private String firstname;
public String getFirstname() {
return firstname;
}
public void setFirstname(String firstname) {
this.firstname = firstname;
}
}
Z tego co zauważyłem podczas debugowania kodu, wchodzi mi do gettera ale settera ni jak nie wywołuje. stosowałem już różnych sposobów np atrybutu ajaxlistener, znacznika <p:ajax> i wszędzie jest tak samo setter nie jest wywoływany i pole firstname ciągle jest nullem. Próbowałem też ustawić @ViewScoped ale to też nie pomogło. Czy ktoś zna przyczynę tego dziwnego działania?