关于FTPClient上传文件,返回true,但是服务器上没有文件。

lucienlugeek lucienlugeek 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
我单独在普通Java项目中测试是可以的,但是把同样的代码放到web工程中,就出现如题所述的问题。
下面我贴一下关键部分的代码,也就是封装的实现上传功能的工具类,各位帮忙看看到底是何原因。

package org.zkforge.petshop.util;

import java.io.IOException;
import java.io.InputStream;
import java.net.SocketException;

import org.apache.commons.net.ftp.FTPClient;
import org.apache.commons.net.ftp.FTPReply;

public class FTPUtil {
private static FTPClient ftpClient = new FTPClient();
static{
try {
ftpClient.connect("192.168.11.207");
ftpClient.login("myftp", "000");
ftpClient.setControlEncoding("GBK");
ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
ftpClient.enterLocalPassiveMode();
int reply;
reply = ftpClient.getReplyCode();
if (!FTPReply.isPositiveCompletion(reply)) {
ftpClient.disconnect();
System.err.println("FTP server refused connection.");
System.exit(1);
}
} catch (SocketException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

/**
* Upload file to FTP server and return the boolean result
* @param filename
* @param is
* @param path
* @return
*/
public static boolean upload(String filename,InputStream is,String path) {
try {
ftpClient.changeWorkingDirectory(path);
ftpClient.storeFile(filename, is);

is.close();
System.out.println("upload file success...");
return true;
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return false;
}
}

/**
* Return the instance of <code>FTPClient</code>
* @return
*/
public static FTPClient getFTPClient(){
return ftpClient;
}

/**
* close ftp connection
*/
public static void closeFTPConnection(){
try {
ftpClient.logout();
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
if(ftpClient.isConnected()){
try {
ftpClient.disconnect();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
...全文
评论 5
收藏 已收藏
分享
返回顶部
lucienlugeek
Apache 24,915 成员 16,537 内容