Olá amigos, estou fazendo um upload de arquivo(JPG) com o richfaces, e tenho um método que coloca o arquivo do upload num determinado local. MASSS… ele realmente coloca no diretorio do projeto, mas esse diretorio é onde fica o projeto instalado no eclipse: algo do tipo: .metadata.plugins\org.eclipse.wst.server.core\tmp0\PROJETO\PASTA_UPLOAD.
Quero que ele vá para a pasta do meu projeto que está em meu workspace.
Alguem?
Opa, o método que estou utilizando:
[code]public void uploadFoto(UploadEvent evento) throws FileNotFoundException {
try {
String newDiretory;
ExternalContext externalContext = FacesContext.getCurrentInstance()
.getExternalContext();
ServletContext ctx = (ServletContext) externalContext.getContext();
newDiretory = ctx.getRealPath(“uploads\”);
System.out.println(newDiretory);
UploadItem item = evento.getUploadItem();
File arquivo = new File(newDiretory);
arquivo = item.getFile();
if (arquivo != null) {
arquivo.renameTo(new File(newDiretory + "/"
+ item.getFileName()));
}
} catch (Exception erro) {
}
}[/code]
Bom dia!
darksteel3000, pegando o caminho do contexto você vai ter acesso ao caminho onde sua aplicação esta sendo “executada”, que no caso é este caminho gerado pelo Tomcat, quando se executa a app pelo eclipse… por exemplo, se você gerar um .war, jogá-lo do webapp do seu Tomcat, ele irá ter acesso a aquele caminho relativo… mas enfim, se quer acessar um caminho fora do contexto, utilize o caminho completo, exemplo “C:\Teste\Sistema\fotos”.
Mas pense bem, pois para trabalhar com estas imagens fora do seu contexto web pode ser complicado… pois para exibição, sua aplicação web enxerga somente o seu contexto.
[]'s
Ops, vlw, agora só fazer com que el pegue o caminho dinamico da minha aplicação. T+ !!!