Overview
Enterprise applications often rely on legacy or complex data sources that struggle to provide real-time responses. By blocking the loading of an interface while waiting for these slow sources, the user experience is degraded. This component allows your interfaces to load immediately with data that's available already and receive push updates once the slow to request data is available. This allows the user to start working with the data they have immediately without being blocked by the slowest data source.
Key Features & Functionality
Hello. I am having problems, regardless of the browser I am using. I have tried Edge, Chrome or Firefox). It has started to occur recently.
The onError parameter is always executed with the value '<!DOCTYPE html>' in the save!value variable.
The database where the events are written is jdbc/Appian and they are high availability Appian Cloud environments. Sail Events Field and Sail Events Servlet are in the latest versions.
Checking the http call log in the browser, the response is the login html in Appian. It looks as if the communication between call and response is lost, including the user's session in Appian.
I look forward to hearing from you. Thank you very much.
<!DOCTYPE html> <link rel="stylesheet" href="https://web-assets.appian-cdn.com/YWUtMjQuMy4yMDAuMA/portal/css/banner.css?appian_environment=tempo" type="text/css" /> <script type="text/javascript"> var hasSiteWideBanner = "false"; if (window.APPIAN) { window.APPIAN.bannerInfo = { hasSiteWideBanner: hasSiteWideBanner === 'true', bannerMessage: "", bannerColor: "#666666", bannerTextColor: "#ffffff" }; } </script> <html lang="en" dir="ltr"> <head> <!-- IMPORTANT: this cannot have any style/script between it and the top of the head! IE requires it to handle versions properly. See http://www.modern.ie/en-us/performance/how-to-use-x-ua-compatible for more --> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta http-equiv="content-type" content="text/html" /> <meta http-equiv="Content-Style-Type" content="text/css" /> <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <link rel="stylesheet" href="https://web-assets.appian-cdn.com/YWUtMjQuMy4yMDAuMA/portal/css/standard_styles_static.css?appian_environment=tempo" type="text/css" /> <script type="text/javascript"> function isInIframe() { try { return window.self !== window.top; } catch (exception) { // if in cross-origin, cannot access window.top return true; } } </script> <link rel="stylesheet" href="https://web-assets.appian-cdn.com/YWUtMjQuMy4yMDAuMA/portal/css/login.css?appian_environment=tempo" type="text/css" /> <link rel="shortcut icon" href="https://XXXXXXXXX.appiancloud.com/suite/rest/a/content/latest/branding/favicon/1538660930000" /> <style> body.appian-body { background: #ebf1f7; } body.appian-body.mobile-landing { background: #fff; } .appian-body .message { color: red; } .appian-body form .field input { color: #333; border-color: #ccc; } .appian-body .submitButton { background-color: #E8E8E8; border: 1px solid #B0B0B0; color: #333333; font-size: 11px; font-weight: bold; } .appian-body .login_background { background-color: #ec0000; } .appian-body .login_box input[type=text]:focus, .appian-body .login_box input[type=password]:focus { border: 1px solid #ec0000; } .appian-body .button_box_links a:active { border-color: #ec0000; } .appian-body #back_link, .appian-body .button_box_links a, .appian-body .logoutForm #returnLink { color: #ec0000; } .appian-body .button_box_links a:hover, .appian-body .button_box_links a:focus { border-bottom: 1px solid #ec0000; color: #ec0000; } .appian-body .btn { color: #ec0000; border: 1px solid #ec0000; } .appian-body input.iBlueButton { border: 1px solid #ec0000; background-color: #ec0000; } .appian-body .btn.primary { background-color: #ec0000; } .appian-body .btn:active, .appian-body .btn:focus, .appian-body .btn:hover, .appian-body .choice_pair input[type=checkbox]:focus + label:before, .appian-body input.iBlueButton:active, .appian-body input.iBlueButton:focus, .appian-body input.iBlueButton:hover { box-shadow: 0 0px 5px #ec0000; } .appian-body input.iText:focus { border: 1px solid #ec0000 !important; /* ASI styles using !important to set blue border color */ } .appian-body .logoutForm #returnLink:hover { border-bottom: 1px solid #ec0000 } .appian-body #back_link:hover { color: #ec0000; border-bottom: 1px solid #ec0000; } .appian-body .choice_pair input[type=checkbox]:checked + label:before { background-color: #ec0000; border-color: #ec0000; } .appian-body .mobile_landing_links { color: #777; } .appian-body .mobile_landing_links a { color: #ec0000; } .appian-body a.mobile_landing_button.primary { color: #fff; background-color: #ec0000; } .appian-body a.mobile_landing_button.secondary { color: #ec0000; border: 1px solid #ec0000; } </style> <title>Appian for XXXXXXXXX Espana (CERT)</title> <script> var isEmbeddedLogin = location.pathname.indexOf('/suite/cors/wc') === 0; (function() { // frame buster; make sure we are not loaded within a frameset if (!location.origin){ location.origin = location.protocol+"//"+location.hostname; if (location.port && (location.port != 80 && location.port != 443)) { location.origin = location.origin +":"+location.port; } } if (top != self) { if ( /https*[:][/][/]XXXXXXXXX.XXXXXXXXX.cert.corp[/].*/.test(document.referrer) || /https*[:][/][/]cloudsoppre-dynamic.XXXXXXXXX.pre.corp[/].*/.test(document.referrer) || /https*[:][/][/]cloudsoppre-static.XXXXXXXXX.pre.corp[/].*/.test(document.referrer) || /https*[:][/][/]cloudsoppre.XXXXXXXXX.pre.corp[/].*/.test(document.referrer) || /https*[:][/][/]sestructurales.pru.bsch[/].*/.test(document.referrer) ){ } else if (document.referrer.indexOf(location.origin+'/') != 0 || !isEmbeddedLogin) { top.location.replace(self.location.href); } } // if redirection to login occurs in a window opened from // the main one, then redirect the main window to the login // page and close the child var ENVIRONMENT_PARAM_NAME = 'appian_environment'; try{ if(top.opener && top.opener.location.href && !isEmbeddedLogin) { var environmentRegex = new RegExp(ENVIRONMENT_PARAM_NAME + "=\\S+$"); top.opener.location.replace(location.pathname.replace(environmentRegex, top.opener.location.pathname.match(environmentRegex))); top.close(); } } catch(e){} })(); function getCookieValue(name) { var name = name + "="; var cookieArray = document.cookie.split(';'); for(var i=0; i<cookieArray.length; i++) { var currentCookie = cookieArray[i]; while (currentCookie.charAt(0)==' ') { currentCookie = currentCookie.substring(1); } if (currentCookie.indexOf(name) != -1) { return currentCookie.substring(name.length,currentCookie.length); } } return ""; } function addClass(el, newClassName){ el.className += ' ' + newClassName; } function removeClass(el, removeClassName){ var elClass = el.className; while(elClass.indexOf(removeClassName) != -1) { elClass = elClass.replace(removeClassName, ''); } el.className = elClass; } function acceptTermsOfService() { addClass(document.getElementById("notification"),"not_visible"); removeClass(document.getElementById("loginForm"),'not_visible'); removeClass(document.getElementById("loginBox"),'notification_form'); document.getElementById("un").focus(); } function supportsSameSiteNone() { return true; } function getCookieAppend() { if (!window.isSecureContext) { return ''; } var append = '; Secure; Partitioned'; if (!supportsSameSiteNone()) { return append; } return append + '; SameSite=None'; } var hasSubmitted = false; var login_jsp = { validateForCookiesAndSecureRequest : function() { if (hasSubmitted) { return false; } var sameSiteAppend = getCookieAppend(); document.cookie = '__appianCookieCheck=isEnabled' + sameSiteAppend; var re = new RegExp('__appianCookieCheck=([^;]*);?','gi'); var appianCookie = re.exec(document.cookie)||[]; var isCookieEnabled = 'isEnabled' === (appianCookie.length>1?appianCookie[1]:''); document.cookie = '__appianCookieCheck=;expires=Fri, 02-Jan-1970 00:00:00 GMT' + sameSiteAppend; if (!isCookieEnabled) { var noCookieMsg = document.getElementById('login_jsp_cookiesMsg'); noCookieMsg.style.display = ''; return false; } var csrfTokenField = document.createElement("input"); csrfTokenField.setAttribute("type", "hidden"); csrfTokenField.setAttribute("name", "X-APPIAN-CSRF-TOKEN"); csrfTokenField.setAttribute("value", getCookieValue("__appianCsrfToken")); document.getElementById("loginForm").appendChild(csrfTokenField); if(isEmbeddedLogin) { const embeddedOriginField = document.createElement("input"); embeddedOriginField.setAttribute("type", "hidden"); embeddedOriginField.setAttribute("name", "embeddedOrigin"); embeddedOriginField.setAttribute("value", location.origin); document.getElementById("loginForm").appendChild(embeddedOriginField); const embeddedQueryStringField = document.createElement("input"); embeddedQueryStringField.setAttribute("type", "hidden"); embeddedQueryStringField.setAttribute("name", "embeddedQueryString"); embeddedQueryStringField.setAttribute("value", location.search); document.getElementById("loginForm").appendChild(embeddedQueryStringField); } hasSubmitted = true; return true; } }; window.sessionStorage && location.hash && sessionStorage.setItem("hash", location.hash); </script> </head> <body onload="try{if(document.getElementsByName('un')[0].value.length>0) {document.getElementsByName('pw')[0].focus();} else { document.getElementsByName('un')[0].focus();}}catch(e){}" class="appian-body"> <div id="systemMessages" style="display: none"> </div> <script type="text/javascript"> if (!isInIframe()) { document.getElementById("systemMessages").style.display="block"; } </script> <div class="appian_logo"> </div> <div class="login_background"> </div> <div id="loginBox" class="login_box "> <div class="login_box_inner"> <div class="login_logo"> <img id="logo" src="https://XXXXXXXXX.appiancloud.com/suite/rest/a/content/latest/branding/logo/1538660930000" alt="Logo"/> </div> <form id="notification" class="not_visible"> <div id="notificationText"></div> <div class="button_box"> <div class="button_box_content"> <div class="button_box_buttons"> <input type="button" class="btn primary" value="Acepto" onclick="acceptTermsOfService()" /> </div> </div> </div> </form> <form id="loginForm" class="" action="/suite/auth?appian_environment=tempo" method="post" onsubmit="return login_jsp.validateForCookiesAndSecureRequest();"> <div class="field_layout"> <label class="accessibilityhidden" for="un">Nombre de usuario</label> <div class="input_below"> <input placeholder="Nombre de usuario" id="un" name="un" type="text" value="" size="34" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false" aria-required="true" aria-describedby="errorMsg" /> </div> </div> <div class="field_layout"> <label class="accessibilityhidden" for="pw">Contraseña</label> <div class="input_below"> <input placeholder="Contraseña" id="pw" name="pw" type="password" size="34" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false" aria-required="true" aria-describedby="errorMsg" /> </div> </div> <div class="field_layout"> <div> <div class="choice_pair"> <input id="remember" name="_spring_security_remember_me" type="checkbox"/> <label for="remember">Recordarme</label> </div> </div> </div> <script> var key = 'REMEMBER_ME_ENABLED', cookieKey = '__localStorage.'+key; setTimeout(function(){ var el = document.getElementById('remember'); el.checked = localStorage ? 'off' != localStorage.getItem(key) : document.cookie.indexOf(cookieKey+'=off') != -1; window.login_jsp.saveRemember = function() { if (el.checked) { if (localStorage) { localStorage.setItem(key, 'on'); } else { document.cookie = cookieKey+'=on'; } } else { if (localStorage) { localStorage.setItem(key, 'off'); } else { document.cookie = cookieKey+'=off;'; } } return true; }; }, 1); </script> <div class="button_box"> <div class="button_box_content"> <div class="button_box_links"> <div class="button_box_link_wrapper"> <a id="forgotPasswordLink" href="/suite/forgotpasswordrequest?appian_environment=tempo"> ¿Olvidó su contraseña? </a> </div> </div> <div class="button_box_buttons"> <input type="submit" class="btn primary" value="Entrar" onclick="return login_jsp.saveRemember && login_jsp.saveRemember() || true;" /> </div> </div> </div> </form> </div> </div> <div id="copyright"> ©2003-2024 Appian Corporation </div> <link rel="stylesheet" href="https://web-assets.appian-cdn.com/YWUtMjQuMy4yMDAuMA/portal/css/fonts/open-sans.css?appian_environment=tempo" type="text/css" /> </body> </html>