getFileName() pega o caminho completo do arquivo no IE

2 respostas
M

Ao utilizar o método descrito ao final recebo o caminho completo de um arquivo, ex: c:\pasta\arquivo.txt
E isto gera um problema pois o arquivo tenta ser salvo da seguinte forma:

c:\testes[u]c:\pasta[/u]arquivo.txt

O que não é possível no Windows, isto acontece com vocês?

No Chrome e FF consigo pegar o nome do arquivo corretamente.
Não gostaria de fazer substituição nos caracteres para resolver.

O método é o seguinte:

public void upload(FileUploadEvent event) throws IOException {
    	UploadedFile file = event.getFile();
    	String nomeArquivo = file.getFileName();
    	try {
			FileOutputStream fos = new FileOutputStream("c:\\testes\\" + nomeArquivo);
			fos.write(file.getContents());
			fos.close();
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		}
    }

2 Respostas

drsmachado

Coisas de IE…
E, por favor, né?
Um simples if resolve isso…

M

drsmachado, CLARO QUE RESOLVE… eu sei disso.
Ao invés de fazer um post desse poderia colocar uma solução.

Sei que isso se resolve também com um split, stringTokenizer, etc.
No meu caso eu mesmo vou dizer o nome do arquivo, conforme dados no banco, então isto não é problema para mim.

Gostaria mesmo era de saber se outras pessoas já se depararam com isso e O QUE fizeram para contornar, conforme minha pergunta no post.

A minha situação é que estou pretendendo migrar de JSF1.2 para JSF2, mas me deparando com uma situação dessa fico em dúvida, já que boa parte dos usuários utilizam IE, e sair de uma situação estável para uma desconhecida é complicado.

Estou gostando do primefaces pelo que li, tomara que este caso seja exceção.
Ainda pretendo migrar.

Criado 9 de janeiro de 2012
Ultima resposta 9 de jan. de 2012
Respostas 2
Participantes 2