我有一个情况,我有一个会话bean与列表,这个列表我显示在html数据表中。当用户从浏览器或正常的href点击网址时,我必须显示所有记录。还有规定可以搜索数据,也可以在那里显示过滤列表。现在用户搜索完成后,列表中包含已过滤的记录,并在完成此操作后将页面留给其他用户,现在,如果用户点击了网址或使用菜单返回此页面,因为我拥有此列表在会话bean中,我仍然有过滤列表。如何区分jsf动作或直接url链接调用页面
由于JSF 1.1或2.0 preRenderView概念中没有默认操作,因此很难清除列表并重新获得未过滤的数据(所有结果)。即使在getList()方法中的技巧也无法完成任务。
我已经计划使用阶段侦听器,因为当用户通过浏览器中的href或url访问页面时,调用应用程序阶段不会发生。我可以在我的会话bean和getList()中切换布尔变量我可以执行一些技巧来检查它是URL,href命中还是命令按钮。
希望我已经说清楚了。总之,我必须在我的bean中确定请求是直接来自href,浏览器还是一个动作。如果搜索操作过滤器记录数据表,如果不保留列表缓存并且只要不进行搜索就继续显示它。
只是指导我是否以正确的方式做事,或者思考得太多,还是可以以更有效的方式完成。
在此先感谢。 井平台是jsf 1.1在weblogic portal 10.3 .....
嗨,我试过请求params,因为它在门户应用程序它以某种方式得到逃脱,我会进一步探讨。我会先试一试。感谢您的时间和回应:)。 – 2010-10-07 04:27:54