`
icelander
  • 浏览: 72512 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

FTP Client enterLocalPassiveMode

 
阅读更多
在项目中使用commons-net-3.0.1.jar实现FTP文件的下载,在windows xp上运行正常,但是放到linux上,却出现问题,程序运行到

FTPClient.listFiles()或者FTPClient.retrieveFile()方法时,就停止在那里,什么反应都没有,出现假死状态。google一把,发现很多人也出现了此类问题,最终在一个帖子里找到了解决办法。在调用这两个方法之前,调用FTPClient.enterLocalPassiveMode();这个方法的意思就是每次数据连接之前,ftp client告诉ftp server开通一个端口来传输数据。为什么要这样做呢,因为ftp server可能每次开启不同的端口来传输数据,但是在linux上,由于安全限制,可能某些端口没有开启,所以就出现阻塞。OK,问题解决。



另外,如果程序部署在weblogic上, 也有可能出现一些问题,为什么,因为weblogic自己也有commons-net包,如果weblogic的jar包版本低于你使用的版本,就设置weblogic 的classpath,优先加载工程里的jar包。
分享到:
评论

相关推荐

    ftpclient android

    - **设置工作模式**:根据网络环境选择合适的FTP工作模式,如`ftpClient.enterLocalPassiveMode()`切换到被动模式。 - **文件操作**: - **上传**:`ftpClient.storeFile remoteFilePath, inputStream)`,其中`...

    javaFTP上传下载

    ftp.enterLocalPassiveMode(); // 使用被动模式 FileInputStream fis = new FileInputStream(localFilePath); byte[] buffer = new byte[1024]; int len; while ((len = fis.read(buffer)) != -1) { ftp....

    ftpFile及ftpServer使用说明

    2. **使用客户端连接测试**:可以通过FTP客户端软件(如FileZilla Client)尝试连接到刚配置好的FTP Server,验证是否可以正常登录并访问文件。 #### 三、使用Java实现FTP文件上传 ##### 3.1 Java FTP客户端开发...

    ftp.rar_ftp_java ftp

    6. **设置传输模式**:根据网络环境,可能需要设置为主动模式或被动模式,例如:`client.enterLocalPassiveMode();`进入被动模式。 7. **下载文件**:使用`boolean downloadSuccess = client.retrieveFile(...

    FTP_sever-java.rar_doc_ftp readme_java ftp_java ftp服务器

    client.enterLocalPassiveMode(); // 开启被动模式,便于防火墙穿透 client.retrieveFile("远程文件名", new FileOutputStream("本地保存路径")); } catch (IOException e) { e.printStackTrace(); } finally {...

    commons-net-3.0.1.jar ftp4j

    client.enterLocalPassiveMode(); client.storeFile("/remote/path/file.txt", new FileInputStream("/local/path/file.txt")); client.logout(); client.disconnect(); } catch (IOException e) { e....

    commons-net实现ftp帮助文档 api

    client.setFileType(FTP.BINARY_FILE_TYPE); // 设置为二进制模式 ``` **被动模式** 在防火墙或NAT环境中很有用,通过`enterLocalPassiveMode()`启用: ```java client.enterLocalPassiveMode(); ``` **断开连接*...

    ftp上传下载文件及文件夹

    client.enterLocalPassiveMode(); FileOutputStream fos = new FileOutputStream(localFilePath); client.retrieveFile(remoteFilePath, fos); fos.close(); client.logout(); client.disconnect(); } } } ...

    ftp.jar

    client.enterLocalPassiveMode(); // 启用被动模式 client.setFileType(FTP.BINARY_FILE_TYPE); // 设置为二进制模式 client.changeWorkingDirectory("/root/upload"); // 进入上传根目录 client.storeFile(...

    基于java的FTP客户端设计与实现

    client.enterLocalPassiveMode(); // 设置被动模式 // 上传文件 FileInputStream fis = new FileInputStream("localFilePath"); client.storeFile("remoteFilePath", fis); fis.close(); // 下载文件 ...

    JAVA实现FTP协议中的服务器和客户端\\

    client.enterLocalPassiveMode(); // 对于被动模式 client.storeFile("remote_file_path", new FileInputStream("local_file_path")); client.logout(); client.disconnect(); } } ``` 为了提高安全性,我们...

    JAVA FTP上传下载

    5. **设置参数**:例如设置文件传输模式(`client.setFileType(FTP.BINARY_FILE_TYPE)`)、被动模式(`client.enterLocalPassiveMode()`)等。 6. **上传文件**:使用`client.storeFile(filename, inputstream)`,...

    用org.apache.commons.net.ftp.FTPClient包实现简单文件下载

    ftpClient.enterLocalPassiveMode(); // 下载文件 String remoteFilePath = "/path/to/remote/file"; String localFilePath = "/path/to/local/file"; OutputStream outputStream = new FileOutputStream...

    ftp实现

    client.enterLocalPassiveMode(); // 使用被动模式进行数据传输 client.setFileType(FTP.BINARY_FILE_TYPE); // 设置为二进制模式 // 上传文件 FileInputStream fis = new FileInputStream("localfile"); ...

    java ftp 下载 源程序 FTPClient

    client.enterLocalPassiveMode(); // 被动模式,适用于防火墙环境 // 或 client.enterLocalActiveMode(); // 主动模式 ``` 4. **选择传输格式**:选择二进制模式进行文件传输,防止文本文件格式问题。 ```java ...

    Ftp上传下载

    client.enterLocalPassiveMode(); // 进入被动模式 ``` 3. **上传文件**: 使用`storeFile()`方法上传本地文件到服务器。 ```java client.setFileType(FTP.BINARY_FILE_TYPE); // 设置为二进制模式,适用于所有类型...

    ftpClient.listFiles()返回值为空的解决方案(上一个传错了)

    ftpClient.enterLocalPassiveMode(); ftpClient.configure(new FTPClientConfig("cn.com.wechat.ftp.UnixFTPEntryParser")); //这里记得改成你放的位置 FTPFile[] fs = ftpClient.listFiles(); // 得到目录的相应...

    commons-ftp中ftpClient类的API

    这个类继承自`SocketClient`,实现了`FTP`接口,并且实现了`Configurable`接口,允许对FTP连接进行自定义配置。 `FTPClient`的使用通常包含以下几个步骤: 1. **初始化和连接**:首先,创建`FTPClient`实例,然后...

    apache java ftpclient

    client.setFileType(FTP.BINARY_FILE_TYPE); // Upload a file FileInputStream fis = new FileInputStream("localfile.txt"); client.storeFile("remotefile.txt", fis); fis.close(); // Download a file...

Global site tag (gtag.js) - Google Analytics