Problem with navigation using task flow actions - action is not executed after first button click

I experienced such strange ADF behavior regarding navigation using task-flow actions. Navigation doesn't work after single button press. After second press - works fine.

Preconditions:
 Strange behavior:
  1. Open application URL=http://localhost:7101/MyApp. Application is automatically redirected to URL:
    http://localhost:7101/MyApp/faces/main.jspx?_afrLoop=73412101452107&_afrWindowMode=0&_adf.ctrl-state=12hvlnrp73_4


    Pay attention to red-colored file name.
  2. Press button "open popup". After first press nothing happen except browser URL changes to:
    http://localhost:7101/MyApp/faces/main.jspx?_adf.ctrl-state=12hvlnrp73_4 
  3. Press button "open popup" once again. Now popup is shown and browser URL changes to:
    http://localhost:7101/MyApp/faces/main?_adf.ctrl-state=12hvlnrp73_4
What did happen here? Right after request application is forwarded to welcome file - its main.jspx. After button press action was not executed because its real source name (displayed in browser URL - "main.jspx")  was not the same as defined in task-flow ("main"). A bit strange, but ADF behaves like this - if there is such mismach it does't execute an action. But... Refreshes URL to one which conforms requirements. Need to remember specific ADF navigation behavior that in browser address bar shows URL of previous page, not the current one. Thats why in step2 we see the same main.jspx and just in step3 - see refreshed to "main".

To fix this (make button working right after the first click) available two solutions:
This case was tested in ADF 11.1.1.7.



Labels: ,