Mam dialog słuzący do dowania komentarza, wygląda o tak:
<p:dialog id="hrCommentDialog" header="Dodaj komentarz: " widgetVar="hrCommentDialog" showEffect="clip" hideEffect="clip" closable="false" resizable="false" dynamic="true" modal="true">
<h:panelGrid columns="2" cellpadding="5" >
<p:outputLabel value="Komentrz: " />
<p:inputText id="commentInputField" value="#{hrBean.comment}" maxlength="256"/>
</h:panelGrid>
<p:commandButton id="zapiszButton" value="Zapisz" oncomplete="PF('hrCommentDialog').hide();">
<f:ajax event="click" listener="#{hrBean.commentRequest()}" />
</p:commandButton>
</p:dialog>
Uruchamiam jego wyświetlenie przyciskiem umieszczonym w tabeli z danymi. Dane dotyczą konkretnego wiersza. Przed jego wyśwwietleniem wykonuje ponizszy kod. Tym samy aktualizuje wartośc comment na te z przetwarzanego obiektu i wyświetlam ją w zaktualizowanym przez update dialogu:
public void showCommentWindow(Request request){
autualRequest = request;
comment = request.getComment();
RequestContext.getCurrentInstance().update("menuForm:tabs:hrCommentDialog");
RequestContext.getCurrentInstance().execute("PF('hrCommentDialog').show();");
}
Do tej pory wszystko działa ok, problem pojawia się kiedy zmieniam wartośc w wyświetlanym dialogu, i zapisuje przyciskiem: zapiszButton. Wykonuje się poniższy kod, czyli zapis do badzy danych. Problem w tym że nie aktualizuje mi się zmienna commment, pozostaje tą wyświetlona na początku. Nie wiem dlaczego
public void commentRequest(){
try {
DAO.RequestDAO.addCommentRequest(autualRequest, comment);
m.zmianyZapisane();}
catch (IOException ex) {Logger.getLogger(HrBean.class.getName()).log(Level.SEVERE, null, ex);
m.zmianyNieZapisane();}
HrBean.update();
RequestContext.getCurrentInstance().update("menuForm:tabs:hrTabs:hrDataTable");
}
@ManagedBean
@SessionScoped
public class HrBean {
String comment;
public HrBean() {
comment = new String();
}
public String getComment() {
return comment;
}
public void setComment(String comment) {
this.comment = comment;
}
}