Pessoal, estou com uma duvida na hora de salvar e recuperar as imagens.
Utilizo como servidor web o Glassfish 3.1 e como IDE o NetBeans 7.0.1
O meu problema é o seguinte:
Se eu salvar a imagem dentro do projeto eu consigo exibir elas depois a partir da raiz do meu sistema digamos “/sistema/imagem/exemplo.jpg” porém, ao limpar e construir a imagem some, eu preciso manter as imagens uma vez que estou criando um sistema que terá atualizações constantes e não posso perder essas informações toda a vez que limpar e construir.
Por outro lado, se salvar fora do sistema o navegador (chrome e outros mais) bloqueia(m) o acessoa ela, até mesmo pelo protocolo file:///.
Eis a minha pergunta
Como faço para salvar a imagem e conseguir recuperá-la e mesmo assim não perdê-la ao limpar e construir?
Seguem os códigos abaixo de como faço para salvar a imagem
public static String gravaTemp(UploadedFile file) {
if (file != null) {
FacesContext ctx = FacesContext.getCurrentInstance();
ServletContext servletContext = (ServletContext) ctx.getExternalContext().getContext();
//String path = servletContext.getRealPath("/imagens/upload");
//esse ConfiguracaoGlobal.getConfiguracaoGlobal().getDiretorio_empresa() me retorna o caminho absoluto do sistema para salvar o arquivo ex: "C:/arquivos e programas..." fazendo com q salve fora do projeto
String path = ConfiguracaoGlobal.getConfiguracaoGlobal().getDiretorio_empresa() + "tmp";
try {
FileOutputStream outPutStream = new FileOutputStream(path + barra + time + file.getFileName());
outPutStream.write(file.getContents());
outPutStream.flush();
outPutStream.close();
} catch (IOException ex) {
}
return ConfiguracaoGlobal.getConfiguracaoGlobal().getDiretorio_empresa() + "tmp" + barra + time + file.getFileName();
}
return null;
}