我正在使用XPages扩展库中的移动控件为iPhone构建移动应用程序。
第一页显示类别列表(恰好是用户名列表)。选择类别后,将显示第二页,列出属于所选用户的所有文档。
打开第二页的URL包含一个带有用户名的参数。第二页有一个页面标题控件,在“label”属性中我添加了以下代码: -
if (param.get("User") != null) {
sessionScope.put("UserName", param.get("User"));
}
return sessionScope.UserName;
我这样做是为了让我可以访问后续页面上的用户名,例如:当用户从第二页上的列表中打开文档时,将显示第三页。
当我在Chrome中测试时,一切都很好。当我在Safari中测试时,我可以看到在第二页打开时设置了sessionScope变量。但是,当我选择文档并打开第三页时,sessionScope变量正在消失。我看不到任何可以解释这一点的代码,并且在Chrome中测试时,sessionScope变量仍然存在于第3页。不出所料我在iPhone上测试时遇到了同样的问题。
这给我的问题是,当从文档(p.3)导航回所选用户的文档列表(p.2)时,我不知道最初选择了哪个用户。
之前有人见过这个,或者对可能发生的事情有任何解释?
感谢您的任何建议。
答案 0 :(得分:0)
您可能希望避免使用参数方法,除非您首先对输入进行整理,因此URL不会直接将userName写入范围 - 甚至更容易 - 将第一个字段与类别绑定到sessionScope。您是否尝试修改代码以使用其他变量名称?