1

在我的 struts.xml 我有:

<action name="file_save" method="fileSave" class="FileActionBean">
                <interceptor-ref name="fileUpload">
                    <param name="maximumSize">
                        5242880
                    </param>
                    <param name="allowedTypes">
                        text/html
                    </param>
                </interceptor-ref>
                <interceptor-ref name="defaultStack"></interceptor-ref>
                <result name="success" type="redirect">file</result>
                <result name="error">error</result>
</action>

当我上传大于 5MB 的文件时,不会引发错误。然后在我的 struts.xml 的顶部,我有:

<constant name="struts.multipart.maxSize" value="20971520" />

现在,当我上传大于 20MB 的文件时,会显示一条错误消息。这是正常行为吗?

如果是这样,我如何配置 struts 以显示拦截器的错误消息?

编辑1:

我正在使用 struts 2 版本 2.1.8.1

4

2 回答 2

1

我在这篇文章中遇到了类似的问题:

您如何覆盖 Struts 2 消息?

我发现按照这个例子我解决了这个问题和上面的问题。

于 2012-06-26T10:25:30.680 回答
0

你为什么不把你的文件大小验证代码带到你的动作类中,然后在验证方法中检查文件大小,如果它违反了然后addActionError("your msg")显示在你的jsp中。

<constant name="struts.multipart.maxSize" value="-1"/>

尝试使用您的 struts 常量并将拦截器文件大小设置为您想要的大小。

于 2012-06-26T07:36:25.273 回答