Hi
I'm new to jsf development and am trying out the quipukit components.
My problem is I am using a DataTable with multipleRowSelection. When the user hits a button, the form is submitted and a new window pops up (using javascript) with the selected rows so that the user can validate the choices. This works fine the first time; the problem occurs when the pop up window is closed and the row selections are changed by the user. When the pop up window opens, the previous selected rows are there instead of the newly selected rows.
From testing, it appears the datatable rows are being placed in the backing bean List each time; however, the new window is opening before those values are placed in the backing bean. I'm wondering if there is a partial-submit functionality or some other method to get values to the backing bean immediately?
Thanks
Hi, Josh!
Thank you for the interest on the QiupuKit library!
It seems that the problem is in the moment when your window is being opened. DataTable updates your backing bean on the Update Model phase, as mentioned in the JSF specification. May be you're invoking your window before this phase (may be the immediate attribute of your action set to true)? If so, you would execute this code later, on the Invoke Application or Render Response phase.
If the problem persists, please provide your code so that we can investigate this problem.
Regards,
Pavel Kaplin
Hi again!
In my previous post i assumed you are using QuipuKit PopupLayer component to display selected items. If you open a new browser window on the client side using, for example, onclick event, this problem may be caused by incorrect sequence of requests. In this case there are two requests - one that submits your selection data to the server (update request) and second that renders your popup window content (show request). It seems that show request is processed before update request. The main task in this situation is to the proper order of requests.
This problem is not related to the QuipuKit or JSF, it is related to HTML. We are not see trivial solutions to this problem, but we may suggest you to use PopupLayer instead of popup window for your purposes.
Regards,
Pavel Kaplin