Apache ftp サーバーに問題があります。1人のユーザーに対してはうまく機能しています。Apache FTP サーバー上の複数のユーザーを異なるホーム ディレクトリに接続したいと考えています。
1人のユーザーを接続するためのコードは次のとおりです。
PropertiesUserManagerFactory userManagerFactory = new PropertiesUserManagerFactory();
userManagerFactory.setPasswordEncryptor(new SaltedPasswordEncryptor());
UserManager um = userManagerFactory.createUserManager();
BaseUser user = new BaseUser();
user.setName("username");
user.setPassword("password");
user.setHomeDirectory("myhomedirectory");
List<Authority> auths = new ArrayList<Authority>();
Authority auth = new WritePermission();
auths.add(auth);
user.setAuthorities(auths);
um.save(user);
FtpServerFactory serverFactory = new FtpServerFactory();
ListenerFactory factory = new ListenerFactory();
factory.setPort(Integer.parseInt(2221);
serverFactory.addListener("default", factory.createListener());
// set user
serverFactory.setUserManager(um);
// start the server
FtpServer server = serverFactory.createServer();
server.start();
別の BaseUser を作成して UserManager に保存しようとすると、正常に保存されますが、最後に保存されたユーザー HOME_DIRECTORY をオーバーライドする代わりに機能しません。
どこが間違っていますか?