Excel myfaces扩展在下载过程中筛选损坏的xlsx

Excel myfaces扩展在下载过程中筛选损坏的xlsx,excel,jsf,jsf-1.2,myfaces,tomahawk,Excel,Jsf,Jsf 1.2,Myfaces,Tomahawk,我正在使用JSF1.2和tomahawk inputFileUpload在同一页面上传和下载.xlsx文件。上传工作正常,即使有最大文件大小限制。当我下载并打开一些Excel电子表格时,我发现文件损坏了。Excel将修复该文件,但每次修复都很烦人。此错误是由web.xml中的ExtensionFilter引起的。当我从web.xml中删除过滤器时,一切正常 有什么解决方案可以防止下载时拦截ExtensionFilter吗?或者,在我上传文件之前,有没有其他方法来管理最大文件大小?多谢各位 <

我正在使用JSF1.2和tomahawk inputFileUpload在同一页面上传和下载.xlsx文件。上传工作正常,即使有最大文件大小限制。当我下载并打开一些Excel电子表格时,我发现文件损坏了。Excel将修复该文件,但每次修复都很烦人。此错误是由web.xml中的ExtensionFilter引起的。当我从web.xml中删除过滤器时,一切正常

有什么解决方案可以防止下载时拦截ExtensionFilter吗?或者,在我上传文件之前,有没有其他方法来管理最大文件大小?多谢各位

<h:form id="upload_form" styleClass="form" enctype="multipart/form-data">
    <t:saveState value="#{editedPeriodBean.editedPeriod}" />
        <h:panelGrid columns="1">
             <h:outputLabel for="file" value="#{ms['com.selectFile']}:" styleClass="full" />
             <t:inputFileUpload id="file" value="#{editedPeriodBean.uploadedFile}" required="true" onchange="verifyFile(this);"  />
             <h:commandButton id="submit_btn" value="#{ms['com.import']}" action="#{editedPeriodBean.importPaymentsToEditedPeriod}" disabled="true" styleClass="align_right" />
        </h:panelGrid>
</h:form>

web.xml

<filter>
        <filter-name>Extensions Filter</filter-name>
        <filter-class>org.apache.myfaces.webapp.filter.ExtensionsFilter</filter-class>
            <init-param>
                <description>
                    Set the size limit for uploaded files.
                        Format: 10  - 10 bytes
                                10k - 10 KB
                                10m - 10 MB
                                1g  - 1 GB
                </description>
                <param-name>uploadMaxFileSize</param-name>
                <param-value>20m</param-value>
            </init-param>
    </filter>
    <filter-mapping>
        <filter-name>Extensions Filter</filter-name>
        <servlet-name>Faces Servlet</servlet-name>
    </filter-mapping>

扩展过滤器
org.apache.myfaces.webapp.filter.ExtensionsFilter
设置上载文件的大小限制。
格式:10-10字节
10k-10KB
10m-10MB
1g-1GB
上传MaxFileSize
20米
扩展过滤器
Facesservlet

web.xml中的这个参数解决了我的问题

<context-param>
    <param-name>org.apache.myfaces.ADD_RESOURCE_CLASS</param-name>
    <param-value>org.apache.myfaces.component.html.util.StreamingAddResource</param-value>
 </context-param>

org.apache.myfaces.ADD_RESOURCE_类
org.apache.myfaces.component.html.util.StreamingAddressSource