java - How to specify the order in which a rich:extendedDataTable selection and h:selectOneMenu value are applied -
i'm working on application that's customised database administration tool.
the page structure following:
<a4j:region> <h:selectonemenu value='#{bean.selectedtable}'> ... <a4j:ajax event='change' render='tablepanel'/> </h:selectonemenu> <a4j:outputpanel id='tablepanel'> <rich:extendeddatatable id='table' selection='#{bean.selectedrows}' ...> <f:facet name='header'> [datascroller etc.] <a4j:commandbutton action='#{bean.deleteselectedrows}' execute='@region' render='tablepanel'/> </f:facet> [columns] </rich:extendeddatatable> </a4j:outputpanel> <a4j:region>
the selectonemenu used choose database table displayed. backing bean request scoped , set pick first available table default when it's initialised. i'm using extendeddatatable subclass paginate data in database.
when click commandbutton delete rows, seems extendeddatatable component determines selected rows /before/ value of bean.selectedtable applied. means no matter table selected in dropdown menu, richfaces tells me selected rows (more or less arbitrary) rows in default database table.
i verified ordering problem, when deleteselectedrows() called value of selectedtable correct. i'm using richfaces 4 m6, , a4j:keepalive doesn't seem there anymore preserve bean state.
is there way tell richfaces / jsf in order these things? tried using immediate="true" on h:selectonemenu didn't help.
also, after delete, tablepanel doesn't seem rerendered, while a4j:commandbutton adds new records same execute , render attributes seems work fine. there way debug state of richfaces ajax requests / hook them via events?
Comments
Post a Comment