当文本文件有前导空格时,上传文件的facefaces失败

问题描述 投票:0回答:1

我有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”,它在触发列表器(DfeOper017MBean.listener)之前失败。在到达Java之前

我认为问题与rich:fileUpload有关,但我无法确认,有什么建议吗?

jsf file-upload richfaces
1个回答
0
投票

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

© www.soinside.com 2019 - 2024. All rights reserved.