jFileChooser mostra apenas as pastas do servidor que está alocando o sistema

Pessoal, tenho um sistema Java Desktop alocado em um servidor.
Este sistema possui um JFileChooser para que o usuário possa selecionar imagens, etc.
O problema é que quando abre o jFileChooser, ele mostra as pastas do computador do SERVIDOR, e não do computador pessoal do usuário que está acessando.

Como faço para buscar a pasta do computador do usuário, ao invés de buscar pelas pastas do servidor?

O JFileChooser só terá acesso ao sistema de arquivos da máquina onde a aplicação estiver executando.
O que exatamente você quer fazer?
Como está fazendo para abrir o JFileChooser no cliente?

Olá staroski, primeiramente agradeço pela sua ajuda.

Seguinte: meu sistema desktop está abrindo um jFileChooser, mas esse sistema fica no servidor.
Eu até encontrei, através do jFileChooser uma pasta C do computador do cliente… o que resolveria meu problema.

Porém gostaria de saber se tem alguma forma de eu abrir o jFileChooser e ele já colocar esta pasta como a pasta “inicial” da pesquisa, por exemplo.

Pra quando o usuário abrir o jFileChooser, já estiver automaticamente apontando para a pasta.

Tente com o método setCurrentDirectory do JFileChooser.

Exemplo:

String strPath = "T:\pasta\";
File dirPath = new File(strPath);
JFileChooser jf = new JFileChooser();
jf.setCurrentDirectory(dirPath);

Fonte: https://stackoverflow.com/questions/13516829/jfilechooser-change-default-directory-in-windows

Abraço.

1 curtida

Você tem duas máquinas, uma cliente e outra servidor.
Como é que você está fazendo a máquina cliente abrir um JFileChooser na máquina servidor?

É que o cliente acessa o sistema através de RDP… um atalho da aplicação no computador do cliente.
Mas a aplicação em si, fica dentro do servidor… E por isso quando eu acesso a aplicação do computador “Cliente”, e abro o jFileChooser, ele abre as pastas/diretórios do computador em que está alocada a aplicação (que seria o Servidor).

Somente para deixar registrado.

Consegui com a resposta deste tópico:

Resolvi com as seguintes linhas de comando:

String userhome = System.getProperty(“user.home”);
JFileChooser fileChooser = new JFileChooser(userhome);

Com isso, é aberto direto no diretório do usuário logado, apesar de executar a aplicação no servidor.

Obrigado pessoal.

Agora faz sentido. :slight_smile: