Я использую Apache FTP-сервер для передачи файлов. Я могу загрузить файлы с сервера с помощью API Apache Commons Net, но при попытке загрузить файл выдает «550: В доступе отказано». При поиске ошибки я обнаружил, что нам нужно добавить авторизацию WritePermission для пользователя. Я сделал это, и даже чем та же самая ошибка прибывает. Ниже приведен код для моей серверной части:
PropertiesUserManagerFactory userManagerFactory = new PropertiesUserManagerFactory();
UserManager userManager = userManagerFactory.createUserManager();
BaseUser user = new BaseUser();
user.setName("username");
user.setPassword("password");
user.setHomeDirectory("C:/Downloads/");
userManager.save(user);
List<Authority> auths = new ArrayList<>();
Authority auth = new WritePermission();
auths.add(auth);
user.setAuthorities(auths);
ListenerFactory listenerFactory = new ListenerFactory();
listenerFactory.setServerAddress("localhost");
listenerFactory.setPort(2221);
FtpServerFactory factory = new FtpServerFactory();
factory.setUserManager(userManager);
factory.addListener("default", listenerFactory.createListener());
FtpServer server = factory.createServer();
server.start();
Я пробовал и другие библиотеки, такие как "ftp4j", но без решения.