0

我正在使用 XPages 扩展库中的移动控件为 iPhone 构建一个移动应用程序。

第一页显示类别列表(可能是用户名列表)。When a category is selected the second page is displayed listing all documents belonging to the selected user.

打开第二个页面的 URL 包含一个带有用户名的参数。第二页有一个页面标题控件,在“标签”属性上我添加了以下代码:-

if (param.get("User") != null) {
    sessionScope.put("UserName", param.get("User"));
}
return sessionScope.UserName;

我这样做是为了让我可以访问后续页面上的用户名,例如,当用户从第二页的列表中打开文档时,会显示第三页。

当我在 Chrome 中测试它时,一切都很好。当我在 Safari 中进行测试时,我可以看到在打开第二页时设置了 sessionScope 变量。但是,当我选择一个文档并打开第三页时, sessionScope 变量正在消失。我看不到任何可以解释这一点的代码,并且在 Chrome 中测试时,第 3 页上的 sessionScope 变量仍然存在。不出所料,我在 iPhone 上测试时遇到了同样的问题。

这给我带来的问题是,当从文档 (p.3) 导航回所选用户的文档列表 (p.2) 时,我不知道最初选择了哪个用户。

有人以前见过这个或对可能发生的事情有任何解释吗?

感谢您的任何建议。

4

1 回答 1

0

您可能希望避免使用参数方法,除非您首先对输入进行清理,因此不要将 URL 直接写入范围 - 甚至更容易 - 将第一个字段与类别绑定到 sessionScope。您是否尝试修改代码以使用不同的变量名?

于 2012-07-20T11:24:06.033 回答