在线等,速度结贴

javadalao 2010-12-22 05:21:20
FTPFile[] files = ftpClient.listFiles(new String(remoteFileName.getBytes("GB2312"), "iso-8859-1"));
这句抛出以下异常。注:这句代码被频繁执行。java.net.ConnectException: Connection timed out: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
at java.net.Socket.connect(Socket.java:518)
at java.net.Socket.connect(Socket.java:468)
at java.net.Socket.<init>(Socket.java:365)
at java.net.Socket.<init>(Socket.java:179)
at javax.net.DefaultSocketFactory.createSocket(SocketFactory.java:196)
at org.apache.commons.net.ftp.FTPClient._openDataConnection_(FTPClient.java:502)
at org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:2296)
at org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:2269)
at org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2046)
at com.spider.util.ContinueFTP.upload(ContinueFTP.java:195)
at com.spider.util.UploadJob.autoUpload(UploadJob.java:124)
at com.spider.util.UploadJob.execute(UploadJob.java:68)
at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:525)

...全文
235 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
javadalao 2010-12-24
  • 打赏
  • 举报
回复
设了超时时间为0,还是不行。很奇怪哦。
javadalao 2010-12-23
  • 打赏
  • 举报
回复
还有人有别的看法没?
javadalao 2010-12-23
  • 打赏
  • 举报
回复
谢谢各位关注,还待解决,我试用各位方案看看。
uastation 2010-12-22
  • 打赏
  • 举报
回复
可以设置连接的超时时间限制……设置大一点就OK了
mengyalizuopeng 2010-12-22
  • 打赏
  • 举报
回复
这个问题我遇到过。。
1.把超时时间设置长一点,任然有风险

2.将操作分开:
例子:加入你要更新3张数据库表(只是例子,具体拆分看你自己的业务)
假如设置超时连接 60秒
可能你连接之后一次就更新三张表 需要70秒 ,超时了。
你可以更新一张表的时候连一次 可能 20秒
更新第二张表的时候重连一次 可能30秒
第三张的时候再连一次。。

这样就不会超时了。。。

当然怎么拆连接 看你业务逻辑。。
反正我是这样干的。。。
sxdsly 2010-12-22
  • 打赏
  • 举报
回复
解决了吗?服务器路径不对也有可能出现这种错误的。。。
dr_lou 2010-12-22
  • 打赏
  • 举报
回复
找找API 关于setTime的
javadalao 2010-12-22
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 boyone2009 的回复:]
去设置ftpClient的超时时间,这应该是去响应的配置文件中去设置
[/Quote]

没有配置文件,超时时间应该设多少呢?
无伤 2010-12-22
  • 打赏
  • 举报
回复
去设置ftpClient的超时时间,这应该是去响应的配置文件中去设置
冰思雨 2010-12-22
  • 打赏
  • 举报
回复
底层连接超时了
javadalao 2010-12-22
  • 打赏
  • 举报
回复
怎么解决?
Jlins 2010-12-22
  • 打赏
  • 举报
回复
远程ftp是不是设置的登陆超时时间了?

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧