2014-07-02 54 views
1

现在,所有最新的浏览器,支持2 GB的文件上传过程的大小限制, 现在我们正在使用以下在我们的应用程序 Java,JSP,Struts 2.0框架,我们没有能够上传2GB大小的文件,所以我在网上搜索,我能找到struts.multipart.maxSize属性配置在struts.xml,我已经设置这个值高达2GB的大小,我还设置了maxPostSize大小属性在tomcat server.xml文件中增加postdata大小与请求。无法上传2gb大小的文件与struts 2.0 frmework

我们仍然无法从浏览器上传2GB大小的文件。

请有人建议我们,在Apache服务器,tomcat,struts或浏览器中有没有可用的设置,然后让我们知道这些。

我们没有使用文件上传拦截在我们的文件上传动作

<action name="fileUpload" method="fileUpload" class="fileUploadAction"> 
<interceptor-ref name="check"> 
</interceptor-ref> 
<result name="Errorjsp">tFrame.jsp</result> 
<result name="insert">FileFrame.jsp</result> 
</action> 

,我们的Java方面的行动有上传的平逻辑,有在服务器端代码中没有大小限制的验证。

我想知道为什么大文件没有上传的原因?

有关更多更新,我们发现在我们的环境中创建的问题是CDN网络。客户端通过浏览器请求将文件发送到cdn网络,然后cdn网络将这些文件发送到实际服务器。

当我们请求超过2GB大小的文件时,问题只发生在cdn网络,所以它与浏览器问题无关。

cdn网络不会发生问题,当我们发送文件字节到chunk到cdn网络时,意味着当我们使用一个java演示程序发送文件字节的块请求时。所以从这个分析中,我们可以说当cdn网络发送数据时cdn网络正常工作。

在我们的例子中,我们发送文件上传请求throgh浏览器,所以我们不能发送块的请求,所以现在我的问题是,任何技术或机制可用来解决我们的问题是否有任何js或请求机制可用,它通过浏览器发送块字节请求?有没有其他技术可以解决我们的问题?

感谢和问候雅鼎Baraiya

+1

而最好的标题是......“更新由安德烈的请求”。 :D –

+0

@AleksandrM Buahahaahah:D –

+0

@YatinBaraiya:您需要展示如何使用“扁平逻辑”上传文件serverside,因为问题可能在那里。顺便说一句,你为什么不使用提供的Struts2机制来上传文件? :| –

回答

1

Struts2的,您可以上传文件最大为2GB,这是maximum allowed size一个请求:

此设置默认为大约2兆字节,应调整到最大大小文件(最多2个演出),您将需要该框架接收。

要做到这一点,你需要同时设置:

  1. 设置共<constant name="struts.multipart.maxSize" value="2147483648" />,为总体要求大小;

  2. 设置文件上传拦截器参数,在本地为一个操作或通用于一个包,用于单个文件最大大小

    <interceptor-ref name="fileUpload"> 
        <param name="maximumSize">2147483648</param> 
    </interceptor-ref> 
    

的0.2是缺少的部分在您的配置:目前,您可以发送2千兆字节的内容,但最大文件大小为2兆字节,例如。每个文件2mb最大1000个文件。

应用上述设置你的配置,使其工作,如:

<action name="doUpload" class="com.example.UploadAction"> 
    <interceptor-ref name="defaultStack"> 
     <param name="fileUpload.maximumSize">2147483648</param> 
    </interceptor> 
    <result name="success">good_result.jsp</result> 
</action> 
+0

如果你有问题,尝试设置它低一点,如1.9GB ...该请求也包含其他数据,也许他们使用2000000000而不是实数... –

+0

嗨Andrea,感谢您的快速回复,在我们的例子中,我们没有使用fileUpload的拦截器,那么在我的情况下,还有什么其他限制会导致 –

+0

呃。请编辑你的问题添加详细信息(并最终代码)与您上传文件的方式相关 –