JSF-Calling BackingBean方法两次维护inputFileUpload的值

时间:2012-11-27 07:49:48

标签: jsf

我是JSF的新手。我有以下要求: 单击commandButton,调用支持bean方法以检查是否存在满足条件的某些数据。 如果是,请向用户确认是否覆盖。 如果用户说OK,请调用相同的方法来支持bean,并设置一些参数来告诉程序覆盖数据。

我在做的是: 将commandButton的操作作为方法名称。 在backing bean方法中,检查我们是否有某些条件,检查数据是否已经存在。 如果是,请返回页面并要求确认。 如果确认,请调用按钮的单击方法。

问题是,当我回到页面时,页面上的inputFileUpload组件会丢失其值。

我能做些什么来实现这个目标?请帮忙。

1 个答案:

答案 0 :(得分:0)

完全符合HTML规范,完全不受JSF的控制。出于安全原因,HTML规范不可能(重新)显示带有来自服务器端的值的HTML输入文件字段的值。否则,this answer中可能出现危险情况。

您需要重新设计表单,使输入文件字段在确认期间未更新。您可以使用其他JavaScript / ajax:只需通过ajax提交表单,并确保未在ajax响应上更新输入文件字段。