0

I am using Primefaces 5.2 and JSF 2.2 and I have a datatable with columns containing a button which opens a dialog with further steps.

Here is a simplified code:

JSF commandbutton:

<p:dataTable value="#{abean.values}" var="val">
 <p:column>
  <p:commandButton oncomplete="PF('dlgWidget').show()" value="change" update="dlg">
      <f:setPropertyActionListener target="#{bean.selectedVal}" value="#{val}" />
  </p:commandButton>
 </p:column>
</p:dataTable>

In the backing bean I am just using getter and setters, so there is no complex business logic. And the dialog is easy to, it just reads the value and is able to manipulate one by using a dropdown.

However, when I click the commandbutton it takes about 8 seconds to display the dialog. The set-method is called right before it is displayed (checked that with outputs) and the get-method which is called from the dialog is right behind the set-method (takes about 11 milliseconds).

My question is: What happens in the 8 seconds when clicking the button and the actual calling of the set-method? Why this AJAX-request takes THAT long?

BalusC
  • 1,082,665
  • 372
  • 3,610
  • 3,555
  • Perhaps you have a monster form/table with hundreds of input fields and thus also that much request parameters? Try adding `process="@this" partialSubmit="true"` to the button to exclude this from being the actual cause. – BalusC Aug 13 '15 at 10:54
  • Seems to be a monster. I added the code as you suggest and it's MUCH faster. Thank you – Jannis Ötjengerdes Aug 13 '15 at 11:51

0 Answers0