Qual o caminho adequado para salvar um arquivo em uma aplicação Java Web (JSF)?

Boa noite!

Achei diversos tutoriais pela internet, e apliquei diversos deles, mas não achei um que eu pudesse salvar o arquivo dentro da minha própria aplicação Web, e eu gostaria de saber se salvar o arquivo dentro da minha aplicação é o adequado, seguem os exemplos que achei pela internet:

ServletContext sc = (ServletContext) context.getExternalContext().getContext();
File pastaArquivo = new File(sc.getRealPath("src") + "\\letra");

Percebi que esse caminho é temporário e não fica exatamente dentro da aplicação, fica na pasta .metadata, e ainda essa pasta está com problemas de acesso, já marquei a permissão de leitura e escrita nessa pasta e ainda continua com Acesso negado.

Alguém teria uma solução ideal pra isso?

eu estava fazendo a mesma coisa aqui,eu salvo as imagens na pasta do meu projeto,pegando o caminho da raiz até ela(não achei outra forma de fazer o mesmo)e dou deploy depois de salvar.Quando o projeto tiver terminado e fizer o deploy definito,eu vou pegar o caminho do servidor

String caminhoServer = this.getServletContext().getRealPath(""); 

e vou salvar direto nele,até porque essa será a pasta definitiva do projeto…

[quote=Slow17]eu estava fazendo a mesma coisa aqui,eu salvo as imagens na pasta do meu projeto,pegando o caminho da raiz até ela(não achei outra forma de fazer o mesmo)e dou deploy depois de salvar.Quando o projeto tiver terminado e fizer o deploy definito,eu vou pegar o caminho do servidor

String caminhoServer = this.getServletContext().getRealPath(""); 

e vou salvar direto nele,até porque essa será a pasta definitiva do projeto…[/quote]

Vou fazer desse jeito então, sempre ocorria exceção de (Acesso Negado), aí desmarquei o checkbox somente leitura e concedi acesso para os usuários na aba segurança do windows para a pasta .metadata e funcionou!

Não tem como salvar o arquivo dentro do projeto propriamente dito? Para que os arquivos estejam disponíveis em meu workspace, por exemplo aparecendo diretamente no src ou WebContent?