Arquivo nao Abre no Browser

5 respostas
evertonsilvagomesjav

Pessoal bom dia. Alguem sabe pq nao estou conseguindo abrir arquivos do tipo jpg e xls no browser? Sei que o browser nao abre xls, mas ele teria que abrir a caixa de dialogo nao?

*Quando eu tento abrir um xls aparece varios quadradinhos no browser :cry:
*Quando tento abrir jpg nao acontece absolutamente nada.
*So esta abrindo txt.

Como pego o contentType do arquivo:

FileTypeMap fileTypeMap = MimetypesFileTypeMap.getDefaultFileTypeMap();		
		
		String contentType = fileTypeMap.getContentType(file);

Como estou setando o arquivo no browser

public void abrirArquivo(byte[] arquivo, String type){
		
		try {		
			
		/*if(type.contains("application")){
			type = type.split("/")[1];
		}*/
			
		HttpServletResponse response = (HttpServletResponse) FacesContext.getCurrentInstance().getExternalContext().getResponse();		
		
		response.setContentType(type);
		
	    response.setContentLength(arquivo.length);
		
		ServletOutputStream servletOutputStream = response.getOutputStream();
		
		servletOutputStream.write(arquivo, 0, arquivo.length);
		
		servletOutputStream.flush();
		
	    servletOutputStream.close();
	    
	    FacesContext.getCurrentInstance().renderResponse();   
        FacesContext.getCurrentInstance().responseComplete();	
		
		} catch (IOException e) {			
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
	}

5 Respostas

luciano2

Só uma pergunta, o browser que você está utilizando para abrir o arquivo tem algum aplicativo associado ao formato?

evertonsilvagomesjav

Que eu saiba nao amigo.

luciano2

Veja se o content type está “application/vnd.ms-excel”

evertonsilvagomesjav

esta sim, nao sei o que possa ser, alguem me ajuda?

Preciso criar um servlet pra isso?

luciano2

Espera, você não está fazendo isso em um Servlet?

Criado 21 de julho de 2011
Ultima resposta 26 de jul. de 2011
Respostas 5
Participantes 2