jsf - p:selectOneMenu with p:ajax in p:dataTable not reset after p:ajax rowEditCancel event -
i have problem concerning reset of f:selectonemenu p:ajax element within p:datatable row edit mode. when cancel row editing, changes in every field (also other f:selectonemenu elements without p:ajax) correctly reset except f:selectonemenu contains p:ajax element.
if remove concerning p:ajax element f:selectonemenu reset correctly.
any advice problem may arise from?
here concerning xhtml snippet:
<h:form id="tradingpartnersform"> <p:datatable id="tradingpartnerrow" styleclass="partnerstable" var="partnertext" value="#{tradingpartners.tradingpartnerlist}" editable="true" > <p:ajax event="celledit" listener="#{tradingpartners.onrowedit}" update=":messages" /> <p:ajax event="roweditcancel" listener="#{tradingpartners.onrowcancel}" update=":messages" /> ... // other fields <p:column headertext="#{somelabel}"> <p:celleditor> <f:facet name="output"> <h:outputtext value="#{partnertext.rolle}" /> </f:facet> <f:facet name="input"> <p:selectonemenu value="#{partnertext.rolle}"> <f:selectitems value="#{tradingpartners.partnerkindsmap.entryset()}" var="partnerkindsentry" itemvalue="#{partnerkindsentry.key}" itemlabel="#{partnerkindsentry.value}" /> <p:ajax event="change" execute="@this" update="l1group l2group" /> </p:selectonemenu> </f:facet> </p:celleditor> </p:column> ... // other fields <p:column style="width:32px"> <p:roweditor /> </p:column> </p:datatable> </h:form>
okay, seams primefaces row edit cancel event works correct. problem homemade, , arises ajax call:
<p:ajax event="change" execute="@this" update="l1group l2group" /> here attribute of bean used within select chanced via ajax phone call right after new value selected. technically if select reset after edit canceled shows newly selected value.
it seems behavior can changed inserting hidden filed storing beans initial attribute value:
<p:column headertext="#{vtdb['acquirepartners.column5']}"> <h:inputhidden value="#{partnertext.rolle}" id="partnertextrolebackup" /> <p:celleditor> <f:facet name="output"><h:outputtext value="#{partnertext.rolle}" /></f:facet> <f:facet name="input"> <p:selectonemenu value="#{partnertext.rolle}"> <f:selectitems value="#{tradingpartners.partnerkindsmap.entryset()}" var="partnerkindsentry" itemvalue="#{partnerkindsentry.key}" itemlabel="#{partnerkindsentry.value}" /> <p:ajax event="change" execute="@this" update="l1group l2group" /> </p:selectonemenu> </f:facet> </p:celleditor> </p:column> but @ moment have no obvious explanation behavior!
jsf primefaces
No comments:
Post a Comment