Primary Files: Update Data and Maintain Layout Status

I have a datatable with rowexpansion that has another datatable inside it. Structure as below:

 <p:dataTable id="machine-table" value=#{machinePage.machines} var="machine" styleClass="machine-table">          
  <p:column style="width:16px">
    <p:rowToggler  rendered="#{machine.projectsInMachine.size() > 0}" />
  </p:column> 
  some other machine column here...
  <p:rowExpansion >
    <p:dataTable value="#{machine.projectsInMachine}" var="project" styleClass="project-subtable"  >        
        some project column here
    </p:dataTable>
  </p:rowExpansion>

Then I have a craving that will receive data about cars and projects every couple of minutes. Is there a way so that I can update it and keep the current extension status? Since currently it will always close all extensions (I am updating the whole table using the poll below).

<p:poll widgetVar="machinesPoll"
        interval="60" listener="#{machinePage.prepare()}"
        async="true" global="false"
        autoStart="true" process="@this"
        update="machine-table" partialSubmit="true"
        ignoreAutoUpdate="true" />

I can not find the link to the extension status, which I can save in the bean. I use: primefaces 6.0, JSF 2.2.13

+4
source share

Source: https://habr.com/ru/post/1668690/


All Articles