rich:fileUpload不清除内部文件-不能上传两次

时间:2018-12-14 11:05:28

标签: java jsf richfaces

我有一个简单的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>。可能是原因吗?

0 个答案:

没有答案