I am using JDEV version 11.1.2.4.0.
I have an ADF Search page (it is NOT using querypanel) with some search fields and a results table.
We are NOT using querypanel so as to achieve the layout that business desires.
After I enter a value in the search field and click on Search it is taking a very long time to display search results.
I started debugging (by implementing PhaseListener) and noticed that till the end of Invoke Application phase (including the execution of the VO query and fetching of 26 rows) it is going quite very fast - no hiccups till this point - Please see below for sample output from application.
However, Render Response phase is taking a very long time (4+ minutes).
I also noticed that NO application code is executing in the Render Response phase - for example, no getters/setters on the managed bean are called and no other application code is invoked still the Render Response phase is taking 4+ minutes to complete. After the completion of the Render Response phase I finally see the results displayed in the Search Results table.
Note: When I scroll thru the search results past the 26th record, another 26 records are quickly fetched and displayed without any latency.
What could be the root cause of this behavior of Render Response phase?
How to see what (ADF) code is being executed in Render Response phase that is taking so much time? How to debug/resolve this? Any known ADF/JSF bugs?
Sample Output from Application on Clicking Search Button:
START PHASE RESTORE_VIEW 1
setCreatedBy - Begin
setResultsTable - Begin
setReasonPopUpBind - Begin
<<<other Managed Bean setters are also called - for brevity, removed those SOPs>>>
END PHASE RESTORE_VIEW 1. Time Taken: 0.016 seconds.
START PHASE APPLY_REQUEST_VALUES 2
END PHASE APPLY_REQUEST_VALUES 2. Time Taken: 0.0010 seconds.
START PHASE PROCESS_VALIDATIONS 3
END PHASE PROCESS_VALIDATIONS 3. Time Taken: 0.0 seconds.
START PHASE UPDATE_MODEL_VALUES 4
END PHASE UPDATE_MODEL_VALUES 4. Time Taken: 0.029 seconds.
START PHASE INVOKE_APPLICATION 5
ActionListener: SearchBean.onSearch() - Begin
VO Query Execution Total Time: 0.071 seconds.
Creating 1 rows of VO
Creating 2 rows of VO
Creating 3 rows of VO
Creating 4 rows of VO
Creating 5 rows of VO
Creating 6 rows of VO
Creating 7 rows of VO
Creating 8 rows of VO
Creating 9 rows of VO
Creating 10 rows of VO
Creating 11 rows of VO
Creating 12 rows of VO
Creating 13 rows of VO
Creating 14 rows of VO
Creating 15 rows of VO
Creating 16 rows of VO
Creating 17 rows of VO
Creating 18 rows of VO
Creating 19 rows of VO
Creating 20 rows of VO
Creating 21 rows of VO
Creating 22 rows of VO
Creating 23 rows of VO
Creating 24 rows of VO
Creating 25 rows of VO
Creating 26 rows of VO
ActionListener: SearchBean.onSearch() - End
END PHASE INVOKE_APPLICATION 5. Time Taken: 0.131 seconds.
START PHASE RENDER_RESPONSE 6
END PHASE RENDER_RESPONSE 6. Time Taken: 252.823 seconds.