如何使用Struts2设置文件上传超时?

时间:2016-04-03 18:11:34

标签: java file-upload struts2 apache-commons-fileupload

我在应用程序中要求上传任何类型的文件。已经使用了Struts2文件上传拦截器,但我在Struts文档中找不到任何直接引用来设置超时以终止文件上传。

<dependency>
    <groupId>commons-fileupload</groupId>
    <artifactId>commons-fileupload</artifactId>
    <version>1.2.1</version>
</dependency>
<dependency>
    <groupId>commons-io</groupId>
    <artifactId>commons-io</artifactId>
    <version>1.3.2</version>
</dependency>

Struts常量:

<constant name="struts.objectFactory" value="spring" />
    <constant name="struts.devMode" value="false" />
    <constant name="struts.i18n.reload" value="false" />
    <constant name="struts.configuration.xml.reload" value="false" />
    <constant name="struts.custom.i18n.resources"
        value="/resources/naps_messages_en,/resources/naps_label_en,/resources/naps_gpcs_err_cd" />
    <constant name="struts.multipart.saveDir" value="D:/tempFile" />
    <constant name="struts.multipart.maxSize" value="2000000000" />
    <constant name="struts.serve.static" value="true" />
    <constant name="struts.freemarker.mru.max.strong.size" value="550" />
    <constant name="struts.freemarker.templatesCache" value="true" />
    <constant name="struts.freemarker.templatesCache.updateDelay"
        value="1800" />

Apache Common utils用于上传从Struts Action调用的文件

FileUtils.copyFile(fileUpload, saveFilePath);

允许的最长上传时间为5分钟。如果上传时间超过5分钟,则用户将收到一条消息,指出发生了超时,并且由于网络问题导致文件无法上传。稍后用户将此类文件移交给应用程序所有者,以便可以将此类文件手动上载到NAS存储。 http://struts.apache.org/docs/file-upload.html

使用Struts配置或此类超时处理的任何可能方法都应该在Struts外部处理。

0 个答案:

没有答案