环境:JSF 2.0 / JPA(由 EclipseLink 提供) / Glassfish 3.1 / java-EE-5 /
一个小型 JSF(没有 Spring、没有 EJB、没有 CDI)Web 应用程序主要包括显示实体的数据表,但目的是显示给定 Writer 的实体 iems 列表:
数据表(
<h:datatable/>
) 显示 Writers 列表。- 数据表(
<h:datatable/>
) 显示作家撰写的书籍列表。(1--*) - 数据表(
<h:datatable/>
) 显示给予作家的评价列表。(1--*) - 数据表(
<h:datatable/>
) 显示 Writers 处理的主题列表。(1--*)。
这就是我看待事物的方式:
由于所有数据表都有一个带有 Writer ID(Writer 的主键)的列。当用户选择给定的写入器(最好从写入器数据表中)并使用它仅显示与该选定写入器行相关的记录时,如何实现告诉当前用户会话保存参数(写入器 ID)。
同理,当用户使用完选定的作家后,他/她可以重置会话以持有另一个作家 ID,并愉快地探索新选定的作家子项目。
换句话说,使用<h:datatables />
和<f:param />
(或类似的东西),我怎样才能持续列出选定作者的书籍、评估和主题项目。
EG:对我来说,持久意味着=当用户从数据表中选择作者并导航到/book/List.xhtml
页面时,书籍数据表必须仅列出所选作者拥有的书籍项目。如果用户导航到其他地方,他只能看到与同一作者相关的内容。
一种想法是使用 OpenFaces 数据表过滤器,但最终用户每次导航到页面时都过滤表太残忍了。他只需要做一次。(一个令人兴奋的解决方案是为每个数据表(在这种情况下)添加一个OpenFaces过滤器(:( ?<o:inputTextFilter />
<o:datatable >
对不起,冗余。希望有人可以提供提示、想法、解决方案或更好的选择。问候。