我认为标题告诉了所有:我想通过AJAX向dataTable添加一行。数据表具有用户可以放置文本的输入字段。就这么简单,这是一个非常常见的案例。
对于会话范围的bean,这没有问题,因为同一个bean一次又一次地更新。但是,我想在请求范围内执行此操作。对于每个请求,我想我想创建一个新bean并用我的表单中的值填充它。然后我希望我的commandButton
的{{1}}添加一个新行,最后像往常一样通过AJAX呈现action
。
问题是我不知道如何让JSF用dataTable组件中的当前数据填充新创建的request-bean?
a similar question被问及answered。但是,该解决方案似乎每次刷新时都会重新加载dataTable的内容,并为新插入的行手动插入空元素,如下所示:
dataTable
对我来说,似乎这种方法还会消除用户对行(新旧)的可能更改......如果他没有先保存它们。
任何指针?
答案 0 :(得分:3)
您应该考虑使用新的JSF 2.0 视图范围。这位于请求和会话范围之间。只要您正在交互(提交和导航到)同一视图,此范围就会存在。这非常适合特定的功能要求。