1

我有一个应用程序,其中文件可以使用MultiPartRequest或 DWR 上传到应用程序中。

我有以下配置。

Web.xml

<servlet>
    <servlet-name>nerp</servlet-name>
    <servlet-class>
        org.springframework.web.servlet.DispatcherServlet
    </servlet-class>
    <init-param>
        <param-name>fileUploadMaxBytes</param-name>
        <param-value>5000</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>nerp</servlet-name>
    <url-pattern>/nerp/*</url-pattern>
</servlet-mapping>

<servlet-mapping>
    <servlet-name>nerp</servlet-name>
    <url-pattern>/dwr/*</url-pattern>
</servlet-mapping>

nerp-servlet.xml

<beans:bean id="multipartResolver"
    class="com.resources.erp.util.ERPMultiPartResolver">
   <!--  one of the properties available; the maximum file size in bytes  -->
    <beans:property name="maxUploadSize" value="100000"/>
</beans:bean>

ERPMultiPartResolver

public class ERPMultiPartResolver extends CommonsMultipartResolver {
@Override
public boolean isMultipart(final HttpServletRequest request) {
    boolean isMultiPartBoolean = true;
    final String urlFromBrowserWithAppName = String.valueOf(request.getRequestURI());
    String urlFromBrowser = "";

    if(urlFromBrowserWithAppName != null) {
        urlFromBrowser = urlFromBrowserWithAppName.replaceAll(String.valueOf(request.getContextPath()),"");
    }
    if(urlFromBrowser.indexOf("dwr") > 0) {
        isMultiPartBoolean = false;
    }
    else {
        isMultiPartBoolean = super.isMultipart(request);
    }
    return isMultiPartBoolean;
}

}

我的MultiPartRequest相关上传被限制maxUploadSizeERPMultiPartResolver. 但我无法限制 DWR 文件上传的大小。

我尝试fileUploadMaxBytes在 web.xml 中使用参数名称,但图像大小不受限制。

当项目中同时使用 Spring 3.2.1 和 Dwr 3.0 时,有人可以帮我解决如何通过 DWR 上传限制图像的大小吗?

我已经检查了链接

4

1 回答 1

0

我上面问题的答案是,不是像我上面那样在 web.xml 中声明fileUploadMaxBytes ,而是声明应该在你配置 dwrContoller 的地方。IE

 <dwr:controller id="dwrController" debug="true" >
    <dwr:config-param name="fileUploadMaxBytes" value="1048"/>
 </dwr:controller>

现在借助这个,我可以将图像大小限制为 1048 字节。

之前我的dwrController配置如下图

<dwr:controller id="dwrController" debug="true" />
于 2013-06-29T09:10:53.597 回答