Jsf 当文本文件有前导空格时,上载文件ricefaces失败

Jsf 当文本文件有前导空格时,上载文件ricefaces失败,jsf,file-upload,richfaces,Jsf,File Upload,Richfaces,我有一个xhtml文件,可以上传图片pdf和txt文件。代码如下 <rich:fileUpload fileUploadListener="#{DfeOper017MBean.listener}" listWidth="600px" maxFilesQuantity="#{DfeOper017MBean.uploadsAvailable}" id="upload"

我有一个xhtml文件,可以上传图片pdf和txt文件。代码如下

   <rich:fileUpload fileUploadListener="#{DfeOper017MBean.listener}" listWidth="600px"
                         maxFilesQuantity="#{DfeOper017MBean.uploadsAvailable}"
                         id="upload"    
                         styleClass="additionalMarginTop"
                         transferErrorLabel="Wystąpiły problemy. Sprawdź, czy plik został przesłany."
                         noDuplicate="true" immediate="true" ajaxSingle="true"
                         immediateUpload="#{DfeOper017MBean.autoUpload}"
                         allowFlash="#{DfeOper017MBean.useFlash}"
                         acceptedTypes="#{DfeOper017MBean.svAcceptedExtTypes}"
                         addControlLabel="${msg['page.dfeOper017form.fileUpload.addControlLabel']}" 
                         clearAllControlLabel="${msg['page.dfeOper017form.fileUpload.clearAllControlLabel']}"
                         clearControlLabel="${msg['page.dfeOper017form.fileUpload.clearControlLabel']}"
                         stopEntryControlLabel="${msg['page.dfeOper017form.fileUpload.stopEntryControlLabel']}" 
                         uploadControlLabel="${msg['page.dfeOper017form.fileUpload.uploadControlLabel']}"
                         cancelEntryControlLabel="${msg['page.util.abort']}"
                         ontyperejected="alert('The selected file type is not supported.')"
                         doneLabel="${msg['page.util.ok']}" status="waitStatus">
            <f:facet name="label">
                <h:outputText value="{_KB}KB z {KB}KB" />
            </f:facet>
            <a4j:support event="onuploadcomplete" reRender="docsInfoPanel"/>
        </rich:fileUpload>

问题是,当我保存一个扩展名为.txt之前有空格的文件并尝试上载时,我会收到如上所述的错误警报“所选文件类型不受支持”。如何确保文件名被修剪?失败的文件示例是“filename.txt”,它在触发listner(DfeOper017MBean.listener)之前失败。在它进入java之前


我认为rich的问题在于:文件上传,但我不能确认,有什么建议吗?

文件名是用
/(?:\S+)\(\S+)$/
检查的,所以你的文件不会通过;重命名这些文件或覆盖文件检查方法(
FileUpload.checkFileType
)或升级到RF 4。

使用
/(?:\S+)\(\S+)$/
检查文件名,因此您的文件不会通过;重命名这些文件或覆盖文件检查方法(
FileUpload.checkFileType
)或升级到RF 4。

但当我尝试上载一个名为foto.png的png或jpeg文件时,它接受它,只有大小写为txt,file.txt,所有其他扩展都没有文件名前导空格的问题@MakhielI我正在查看RF 3.3的代码,您使用的是其他版本吗?唯一可以接受“foto.png”的方法是,如果
@acceptedTypes
为空或“*”。但是当我尝试上传一个名为foto.png的png或jpeg文件时,它接受它,唯一的大小写是txt,file.txt,所有其他扩展名都没有问题,文件名有前导空格@MakhielI我正在查看RF 3.3的代码,你在用另一个版本吗?只有当
@acceptedTypes
为空或“*”时,才能接受“foto.png”。