Forum Stats

  • 3,873,233 Users
  • 2,266,521 Discussions
  • 7,911,476 Comments

Discussions

Modal dialog hangs on pageload with spinner

Bas de Klerk
Bas de Klerk Member Posts: 563 Gold Badge
edited Dec 27, 2021 3:44PM in APEX Discussions

Hi.

APEX 21.2.1, ORDS 21.4.0.r3481956 on Tomcat 8.5.73, Apache 2.4.6

I',m having a strange problem where a model on pageload hangs with a spinner visible and the pagecontent of the modal not showing (only the previous modal is shown).

Trying to solve a problem in my main application I've setup a simple variant of the problem. This contains a flow trough some modal windows.

First I open a modal page2. This modal opens another modal page3 on top of modal page2. When I submit modal page3 there is a dynamic action on the button on modal page2 which on close of modal page3 submits modal page2.

On submit of modal page2 it should redirect to modal page4. 

The last redirect to modal page4 hangs with the spinner visible. If I define a dynamic action showing an alert on pageload of modal page4 I still see the the alert but the content of modal page4 is not shown, it still shows the content of modal page2 ( which is the previous on ) but because of the alert comming from modal page4 I know for sure there is some kind of redirect beeing done, it just somehow not finishes loading the modal.

Also, if I check the apache log ( there is a reverse apache proxy in front of tomcat ) I see that modal page4 is loaded/requested.

This only occurs if the modalpage2 auto submits on close of the one on top of it. If I define a button on modal page2 which carries out the submit (and redirect) on click of a button it just works fine.


Apache log:

[23/Dec/2021:13:16:34 +0100] "GET /apex212/f?p=126:2:12898902648757&p_dialog_cs=IC-TGIoJyrmQildBIL4Ximlo711kyfVY5GUniv0Rl0w0m1apkllxvUuPSq7Ou9DjbiAfk7Lq6MCkQtf1KjpkIg HTTP/1.1" 200 12326

[23/Dec/2021:13:16:35 +0100] "GET /apex212/f?p=126:3:12898902648757&p_dialog_cs=wWUyymKpJPxZeU6xNOk2vPwijH4m5O6cifBvFUXUq9r-sg--I6rIuS-TDw0x-JwyHwSGFp0TXwELhpdOhJXEZg HTTP/1.1" 200 10835

[23/Dec/2021:13:16:36 +0100] "POST /apex212/wwv_flow.accept?p_context=126:3:12898902648757 HTTP/1.1" 200 421

[23/Dec/2021:13:16:36 +0100] "POST /apex212/wwv_flow.accept?p_context=126:2:12898902648757 HTTP/1.1" 200 475

[23/Dec/2021:13:16:36 +0100] "GET /apex212/f?p=126:4:12898902648757:::4::&cs=3y7I9CDW3Tn16rU2958VTxyS3YxYuFqEiBdu8wTthDi-T74nt2pcTYQVE4RR6LYT9EaCo1i6uPk8EN2zJpBFX_Q&p_dialog_cs=qroPVlDQ92kNHJ8JCZbj-Kt1vfiPMc772fJt9OofHlD-6x-w-pM7LFgD4Hn24yn9Z9nirtd3fEHcK_pGtb1h3A HTTP/1.1" 200 10985


If I upload my testapp to apex.world.com it works as expected so no problems there.

Besides this issue I have no problems at all with my infrastructure or apex installation.


Any ideas on how to further get to the cause/solution? 

I agree that this is a very specific problem but maybe someone had something similar before and has suggestions for next steps.


Happy holidays 😉

 Bas

Tagged:

Best Answer

«1

Answers

  • Bas de Klerk
    Bas de Klerk Member Posts: 563 Gold Badge

    After some further investigation : This probably has nothing to do with the infrastructure. When creating an testapp on 21.1 this works fine. When creating the "same" app after updating the database/apex to 21.2 this fails. Although if I create it on apex.oracle.com which is on 21.2 there is no issue. .... Probably something I'm overlooking after 2 days of search.

  • jariola
    jariola Member Posts: 10,918 Gold Crown

    Maybe it's bug in 21.2.1 ?

    apex.oracle.com version is 21.2.0

  • InoL
    InoL Member Posts: 10,189 Blue Diamond
    edited Dec 23, 2021 3:56PM

    if I create it on apex.oracle.com which is on 21.2 there is no issue

    There is already a patch set for 21.2 which may explain the difference.


    Never mind, already answered by Jariola. And you're actually a step ahead of apex.oracle.com.

  • Bas de Klerk
    Bas de Klerk Member Posts: 563 Gold Badge
    edited Dec 23, 2021 4:04PM

    Hi jariola/Inol,

    thanks for taking the time to read my problem. I did not mention all the details and scenario's I've already tried, there are too many :(

    The problem initially showed in 21.2 and in trying to solve it I've upgraded to 21.2.1.

    Also I've tested on a different environment where I tested on 21.1 and then upgraded to 21.2 ( without the patch ), that's where I found that when I build the app on 21.1 it works and when I build it on 21.2 it does not work on my environments. But that's not consistent with the behaviour I see on apex.oracle.com so...that's why I'm a bit lost.


    During the tests I'm doing right now it looks a bit like the submit which is done when via a dynamic action on close of the other modal is executed a bit to early, it is done when the top modal is not completely closed. When doing the exact same action a little bit later via a click on a button manually everything works fine.

    I've included the working and not working test app in this post if anybody is interested ( which both work on apex.oracle.com but not on any of my environments ).


  • Māris Gabaliņš
    Māris Gabaliņš Member Posts: 19 Red Ribbon

    Hi,

    Possibly You did hit this bug (https://community.oracle.com/tech/developers/discussion/comment/16819886)

    from different side. Sadly no solution yet.

    Sincerely

    Maris

  • Bas de Klerk
    Bas de Klerk Member Posts: 563 Gold Badge

    Hi Maris,


    I don't think so. The bug is related to interactive grids, in my situation there is no grid involved.


    Regards

    Bas

  • Bas de Klerk
    Bas de Klerk Member Posts: 563 Gold Badge
    edited Dec 27, 2021 3:43PM

    Hi Maris,

    Thanks, this looks like something related to the problem I'm having.

    I don't see the javascript stack error which is in your example but the behaviour is almost the same. It's also a stacked modal from which the dynamic action which is a result from the close dialog is not handled correctly.

    I think you're right that this a bug and a work around is not the solution since in our applications there are many occurences of this scenario.

    Anybody from the apex team seeing this? I know I can file a bug at oracle support but sadly that usually takes a long time before it reaches the right person.


    Regards


    Bas

  • Bas de Klerk
    Bas de Klerk Member Posts: 563 Gold Badge
    edited Feb 9, 2022 9:17AM

    Update: after doing some more debugging.

    This only seems to occur after doing a theme update to the 21.2 theme version. So if I use an old app it works fine on 21.2 but if I upgrade the theme of the app to the latest version ( 21.2.0 or 21.2 with patch 1, 2 or 3 ) this problem occurs.

    If I monitor the apache logs I get a http error 408 when using chrome or edge as a client, when using firefox I don't see this error but also the modal hangs with a spinner.

    If I check the google chrome console and compare a working testcase vs non working I see that there are differences, the working app is using a p_dialog_cs parameter in a different way compared to the not working, this probably means nothing but it's a difference :

    Problem app :

    apex/f?p=126:4:11707016929602:::4::&cs=3frMHrZh80LyqoZYSogB4D7O1DSKwkRKIOD-c0oCwrMP3De0kEZ4muUAuliOS_DqU-fAvwEOFCwNMlE7Sim4FGg&p_dialog_cs=6pegQSNx5jp5-4_cxoI7P3a_sSqlQCRR7gH5WwwYErY0BzLmT_JRpJPlXe0KULta458M0bQMx4goIL-QqUWAgA

    After this nothing is loaded when checking the chrome console

    Working app:

    apex/f?p=125:4:7119508168528 :::4&p_dialog_cs=zfcrxY6ucBw4Gpc5UI85dZdP1C8KGDQfMxDxQg8NWzJzVtyjvTRLH7WV84ALtmjWpz7LMPXoXpATx2hre9hhWw

    After this all needed js/css/fonts are loaded when checking the chrome console


    Going to create a SR at oracle support for this now and update this thread if I have any solution.

    Will focus on the theme update since this seems to cause the problem.

  • Bas de Klerk
    Bas de Klerk Member Posts: 563 Gold Badge

    I am able to reproduce this on multiple cleanly setup DB/APEX/ORDS(standalone) environments on windows and linux with all the latest product versions....

    Since Oracle support claims they cannot reproduce this on a pristine environment with all the latest product versions I have to move on to a workaround.

    For now I've built in a small delay in the submit. So not use the standard DA-action of submit but do it "manually" via javascript with just a small ( 0,5 sec) delay, then this works again. Would be cool to find the cause/final solution though.


    JS used : setTimeout(() => { apex.submit({request:'NEXT',showWait:true}); }, 500);