Reloading Form dialog box not displayed in IE11

classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

Reloading Form dialog box not displayed in IE11

kiskandar
Hi All,

I currently have an issue where the Reloading Form dialog box is not shown
when user's session expires when a form is open which causes the request to
/xforms-server to return the HTML login form.

When that happens the following code is triggered in AjaxServer.js

/ var responseXML = o.responseXML;
 var responseXmlIsHTML = responseXML && responseXML.documentElement &&
responseXML.documentElement.tagName.toLowerCase() == "html";
var formID = o.argument.formId;
var isResponseToBackgroundUpload = o.responseText && (! responseXML ||
responseXmlIsHTML);/

In this case o.responseXML is null and isResponseToBackgroundUpload
evaluates to true and the following code is then executed

/var fragment =
                o.responseText.substring(
                    o.responseText.indexOf("<xxf:event-response"),
                    o.responseText.indexOf("</xxf:event-response>") +
"</xxf:event-response>".length);
var xmlString = fragment.replace(/&lt;/g, "<").replace(/&gt;/g,
">").replace(/&amp;/g, "&");
responseXML = ORBEON.util.Dom.stringToDom(xmlString);/

This results in a portion of the login page's HTML being parsed as XML which
resulted in a parse error. IE11 throws an exception at this point and stops
script execution. Edge, Firefox, and Chrome populates responseXML with the
error HTML page and the script execution continues as normal. Should this
code not be executed if o.responseXML is null?

Kind regards
Kris

--
Sent from: http://discuss.orbeon.com/

--
You received this message because you are subscribed to the Google Groups "Orbeon Forms" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To post to this group, send email to [hidden email].
Reply | Threaded
Open this post in threaded view
|

Re: Reloading Form dialog box not displayed in IE11

Alessandro  Vernet
Administrator
Hi Kris,

Are you saying this issue only happens with IE11, and not with Chrome or
Firefox? What is the "Reloading Form dialog box" you're referring to? Also,
the session heartbeat feature should prevent the session from expiring, as
long as the form is open. Did you by any chance disable that feature?

https://doc.orbeon.com/contributors/state-handling.html

Alex

-----
--
Follow Orbeon on Twitter: @orbeon
Follow me on Twitter: @avernet
--
Sent from: http://discuss.orbeon.com/

--
You received this message because you are subscribed to the Google Groups "Orbeon Forms" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To post to this group, send email to [hidden email].
--
Follow Orbeon on Twitter: @orbeon
Follow me on Twitter: @avernet
Reply | Threaded
Open this post in threaded view
|

Re: Reloading Form dialog box not displayed in IE11

kiskandar
Hi Alex,

The dialog box I'm referring to is the /xforms-login-detected-dialog/
element which shows up when the server returns the login page.

I've set the /oxf.xforms.login-page-detection-regexp/property to detect the
login page as follows
/<property as="xs:string" name="oxf.xforms.login-page-detection-regexp"
value='.title.InfoMedix *- *Clinical Patient Folder *- *Login./title.' />/

We get the following when the session expires in Chrome, Firefox, and Edge,
but not in IE11
<http://discuss.orbeon.com/file/t375253/Selection_001.png>

The session heartbeat has been disabled since there are cases where users of
our application leave the form window open for a prolonged period of time
and we don't want their session to stay valid in such cases.

Kind regards
Kris


--
Sent from: http://discuss.orbeon.com/

--
You received this message because you are subscribed to the Google Groups "Orbeon Forms" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To post to this group, send email to [hidden email].
Reply | Threaded
Open this post in threaded view
|

Re: Reloading Form dialog box not displayed in IE11

Alessandro  Vernet
Administrator
Got it Kris, thank you for the precisions. That code isn't fresh enough in my
mind for me to have an answer to your question off the top of my head, but I
will try to reproduce the issue, debug this code, and see if indeed we
should not execute that code if `o.responseXML` is `null`. I'll follow-up on
this thread when I know when I have more information about this.

Alex

-----
--
Follow Orbeon on Twitter: @orbeon
Follow me on Twitter: @avernet
--
Sent from: http://discuss.orbeon.com/

--
You received this message because you are subscribed to the Google Groups "Orbeon Forms" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To post to this group, send email to [hidden email].
--
Follow Orbeon on Twitter: @orbeon
Follow me on Twitter: @avernet
Reply | Threaded
Open this post in threaded view
|

Re: Reloading Form dialog box not displayed in IE11

Alessandro  Vernet
Administrator
Hi Kris,

A quick update on this one: I've reproduced the issue on IE11, and for now
created the issue linked below. I'll need to investigate this further, and
will let you know as soon as I have more info on this one.

https://github.com/orbeon/orbeon-forms/issues/3609

Alex

-----
--
Follow Orbeon on Twitter: @orbeon
Follow me on Twitter: @avernet
--
Sent from: http://discuss.orbeon.com/

--
You received this message because you are subscribed to the Google Groups "Orbeon Forms" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To post to this group, send email to [hidden email].
--
Follow Orbeon on Twitter: @orbeon
Follow me on Twitter: @avernet
Reply | Threaded
Open this post in threaded view
|

Re: Reloading Form dialog box not displayed in IE11

Alessandro  Vernet
Administrator
Hi Kris,

Alright, the issue is fixed. I'll get in touch with you "privately" through
Basecamp to see if you need a patch for this.

Alex

-----
--
Follow Orbeon on Twitter: @orbeon
Follow me on Twitter: @avernet
--
Sent from: http://discuss.orbeon.com/

--
You received this message because you are subscribed to the Google Groups "Orbeon Forms" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To post to this group, send email to [hidden email].
--
Follow Orbeon on Twitter: @orbeon
Follow me on Twitter: @avernet