我有一个简单的rich:fileUpload
组件,其中有maxFilesQuantity = 1
:
<rich:fileUpload id="fileUp"
fileUploadListener="#{bean.listener}"
maxFilesQuantity="1"
doneLabel="Success"
clearLabel="Clear"
addLabel="Add"
clearAllLabel="Clear"
deleteLabel="Delete"
serverErrorLabel="An error occured"
sizeExceededLabel="File is too big"
uploadLabel="Load file"
binding="#{uploadFileBean.fileUpload}"
style="width: 800px"
autoClear="true">
</rich:fileUpload>
当我上传一个文件,然后单击“加载文件”时,它会调用bean.listener()
方法,然后我对该文件进行处理。
但是我不能第二次不刷新页面。我可以再次将文件Add
移到列表中(通过浏览器的文件浏览器浏览),但是当我单击Load File
时,它会显示进度条一秒钟,然后文件消失并且什么也没有发生,没有日志-什么都没有。
我发现这是当您超过maxFilesQuantity
时引起的-我这样做是因为我试图上传第二个文件-但我想以某种方式重设此文件,因此无需刷新即可页面。
在文档中,他们说rich:fileUpload
组件应重新呈现-但这不起作用。我还尝试过从org.richfaces.component.UIFileUpload.delete()
手动删除文件-也不起作用。
我在这里做什么?
使用RichFaces 4.5.11
Ps。我在那个bean上有一个<managed-bean-scope>session</managed-bean-scope>
。可能是原因吗?