我们在单独的部署(交叉上下文)中使用Orbeon 3.9,应用程序安全与Opensso一起使用,服务器是Glassfish。
注意:ORBEON提交(BackRequests)使用另一个Web应用程序处理,其中Contex仅可从Local Host访问而不是在OpenSSO下。
会话超时到期后(在浏览器中左打开表单足够长以进行超时)被锁定在"加载..."循环中,然后首先"单击"。
firebug所说:
1)或bebeon ajax for/application-context/orbeon/xforms-server
2)opensso停止了302暂时移动的请求
3)ajax正在征用/opensso/cdcservlet?...
4)返回200,可能登录页面内容
5)忽略了响应,goto 1)
无休止。
我已经尝试过:http://wiki.orbeon.com/forms/how-to/other/redirect-users-error
但没有帮助,因为未显示对话。
我们需要将浏览器重定向到该登录页面。
有什么建议?
编写代码的方式,如果要orbeon形成客户端代码以识别服务器的答案作为错误,则服务器还需要在http的主体中具有响应看起来像:
的文档<error>
<title>...</title>
<body>...</body>
</error>
如果不存在此类文档,则客户端代码将在延迟后重试该请求,并在此期间显示"加载……"。因此,在您的情况下,如果请求是从AJAX请求重定向的,则需要找到一种获取登录页面以回答该文档的方法。
现在,我还认为在这方面应改进Orbeon表单,并应将AJAX请求的302答案视为错误,默认情况下,或允许您配置此行为。因此,我打开了第560期。