Pessoal, estou com um probleminha na mão…
O problema é:
Estou utilizando o commons fileupload para reliazar os uploads na minha servlet mas estou com problemas na hora de setar o caminho.
minha estrutura de diretórios é a seguinte:
eclipse->workspace->aplicacao
Nesta pasta está toda a minha aplicação com o WEB-INF o src e etc.
Para que um usuário possa visualizar um vídeo que fiz upload ele tem q estar obrigatoriamente em alguma sub-pasta de aplicação, certo? Pois o site tem uma seção para que o usuário possa ver seus vídeos. Eu estava enviando os vídeos para c:\Projeto\Video. Depois vi que se o video ficar fora da aplicação não há como eu disponibilizar o vídeo para o usuário assistir.
Em seguida vou mandar o código que estou usando para setar o caminho do arquivo.
String caminho = "/videos/" + loginProprietario + "/";
// Cria o diretório caso ele não exista
File diretorio = new File(caminho);
System.out.println(diretorio.getAbsolutePath());
if (!diretorio.exists()){
diretorio.mkdir();
}
// Mandar o arquivo para o diretório informado
String nome = item.getName();
String arq[] = nome.split("\\\\");
for (int i = 0; i < arq.length; i++) {
nome = arq[i];
}
File file = new File(diretorio, nome);
FileOutputStream output = new FileOutputStream(file);
InputStream is = item.getInputStream();
byte[] buffer = new byte[2048];
int nLidos;
while ((nLidos = is.read(buffer)) >= 0) {
output.write(buffer, 0, nLidos);
}
output.flush();
output.close();
Quando faço isso ele procura por c:\videos… Na verdade quero que ele busque algo do tipo:
http://localhost:8080/aplicacao/admin/videos
Eu quero que ele salve em uma pasta videos dentro do contexto da aplicação.
Alguém tem idéia de como salvar isso dessa forma?