FTP文件上传失败Java

tor*_*uko 7 java upload ftp-client

我在Java项目中使用Apache的FTPClient和FTPServer库.服务器和客户端在同一台机器上.

我的FTPServer应该是本地服务器,与Internet无关.我可以从客户端连接到FTPServer(我得到230作为回复代码)但我似乎无能为力.我无法存储或检索任何文件.

我几乎阅读了与此事有关的每一个问题,但是那些提出其他问题的人能够发送简单的文件,并且无法发送像pdf等文件.我只需要发送或检索文本文件.

有什么建议?

        FTPClient client = new FTPClient();
        String host = "mypc";
        String Name = "user";
        String Pass = "12345";

        client.connect(host);
        client.login(Name,Pass);
        System.out.println("Reply Code: " +client.getReplyCode());


    File file = new File("C:\\.....myfile..txt");

        FileInputStream in = new FileInputStream("C:\\.....myfile..txt");
        boolean isStored = client.storeFile("uploadedfile.txt", in);
        in.close();
        client.logout();
        System.out.println("isStored: " +isStored);
Run Code Online (Sandbox Code Playgroud)

我没有把真正的路径名称.它返回false,没有异常等.这可能是因为它们在同一台机器上?

编辑:原来我需要写权限才能将文件发送到ftpserver.默认情况下,它不会授予用户写入权限.如何使用Apache的ftpserver库为用户提供写入权限?

tor*_*uko 5

解决问题:这是如何授予用户写入权限.我将此代码段添加到服务器端并且它可以正常工作.

List<Authority> auths = new ArrayList<Authority>();

Authority auth = new WritePermission();

auths.add(auth);

user.setAuthorities(auths);
Run Code Online (Sandbox Code Playgroud)

Authority这个符号的术语- > < >在第一行之后List和之后ArrayList.网站没有看到<>符号中的单词.