java.net.SocketTimeoutException: Read timed out 10

使用开源CommonFileUpload进行远程Web文件上传,上传过程中屡次出现下列问题:org.apache.commons.fileupload.FileUploa... 使用开源Common FileUpload进行远程Web文件上传,上传过程中屡次出现下列问题: org.apache.commons.fileupload.FileUploadBase$IOFileUploadException: Processing of multipart/form-data request failed. Read timed out
caused by :java.net.SocketTimeoutException:read time out.
展开
 我来答
蓝雪儿老师
高能答主

2021-10-14 · 愿千里马,都找到自己的伯乐!
蓝雪儿老师
采纳数:266 获赞数:85173

向TA提问 私信TA
展开全部

具体的解决方法如下:


修改tomcat配置文件server.xml,找到类似于下面配置:

<Connector port="8086" maxHttpHeaderSize="8192"。

maxThreads="150" minSpareThreads="25" maxSpareThreads="75"。

enableLookups="false" redirectPort="8443" acceptCount="100"。

connectionTimeout="20000" disableUploadTimeout="true" /> 。

将上面的参数disableUploadTimeout值改为false即可。

kevintop3
推荐于2017-04-17 · TA获得超过1.5万个赞
知道小有建树答主
回答量:890
采纳率:100%
帮助的人:530万
展开全部

 很明显,出现这种问题的原因是读取文件超时,解决方法是将HTTP Keep-Alive Timeout这个参数设置地尽量大,但是有没有更好的解决方法,由于使用的服务器是tomcat,便可以通过修改服务器配置来解决该问题,具体的解决方法如下:
    修改tomcat配置文件server.xml,找到类似于下面配置:

 <Connector port="8086" maxHttpHeaderSize="8192"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" redirectPort="8443" acceptCount="100"
               connectionTimeout="20000" disableUploadTimeout="true" />

将上面的参数disableUploadTimeout值改为false即可。

更多追问追答
追问
我的tomcat是6.0的,server.xml里没有你上面的那部分配置,只有

请问我需要修改哪里?
追答

增加disableUploadTimeout属性。

<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" disableUploadTimeout="true"/>
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
中山樱飞
2013-08-22
知道答主
回答量:18
采纳率:0%
帮助的人:7.8万
展开全部
你在上传页面上面的 form 标签没有给enctype="multipart/form-data" 参数 导致Web项目 服务器端不能正确解析文件. 如果没有使用Struts框架的话,没有OGNL 就不能正确对应你上传的文件类型enctype="multipart/form-data"指明之后 Commons FileUpload 才能读取这个文件 当前你报的错误是: 文件上传阻塞 Scoket管道流连接超时
追问
上传小文件是正常的,上传100M,200M的文件才会报这个错,还有我在本地测试上传大文件小文件都没问题,上传的很快,只是部署到服务器上才报这个错误。
上传小文件是正常的,上传100M,200M的文件才会报这个错,还有我在本地测试上传大文件小文件都没问题,上传的很快,只是部署到服务器上才报这个错误。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
javaee0311
2013-08-22 · TA获得超过143个赞
知道答主
回答量:232
采纳率:100%
帮助的人:73.8万
展开全部
超时 时间设 大一点就可以了
//设置超时
socket.setSoTimeout(60000);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-08-22
展开全部
上传太久,timeout了
追问
请问有什么解决方案吗
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式