Como salvar arquivos txt em java

Gostaria de saber como posso salvar arquivo .txt em java… por exemplo: O usuário click no botão Download… a aplicação vai ter que pegar o valor da variável… salvar no .txt e salvar… porém… não pode salvar em um caminho específico… tem que da a opção do usuário escolher onde deseja salvar…
de preferência feito em JSF.