【发布时间】:2015-06-05 03:07:14
【问题描述】:
我们有这个 XPages 应用程序,它有一个母版页(比如 M.xsp)和几个子页,所有这些子页都在母版页上的单独 iframe 中(在单独的选项卡中加载为 A.xsp、B.xsp 和 C.xsp )。一般来说,应用程序运行良好。每个子页面不应该干扰其他页面,据我所知,它不会。一些与页面相关的数据存储在 viewScope 变量中,但对于我们开发的 Managed Beans 最重要的部分,它们的数据也大多在 view-scope 中。
现在,我们看到以下内容:
- 在页面 A 上,我们单击了几下,然后发生了一些 AJAX 调用以从服务器获取数据
- 我们切换到页面 B,我们向服务器发出 3 次 AJAX 数据请求
- 我们切换回页面A,我们再次单击获取一些数据,并且发生了一个beforePageLoad事件!不用说,页面仍在加载中。
- 在同一个页面A上,我们再次点击获取不同的数据,再次触发beforePageLoad!
viewScope丢了,我的page-dependent bean丢了,很奇怪。
我们检查过,但更改专用于 XPage 的内存量并没有改变任何东西。
XPages 9.0.1,仅限浏览器。
有人可以解释一下这种行为:为什么会重复执行 beforePageLoad?我们该如何预防呢?
谢谢!!
【问题讨论】:
-
我认为我的问题与stackoverflow.com/questions/25304249/… 有关:页面 A 并且它的所有内存似乎完全消失了。进一步调查...
标签: java event-handling scope managed-bean