[RESOLVIDO][AJUDA] Problema ao enviar arquivo para o usuário

Já estou há quase dois dias tentando resolver este problema e não consigo.

Tenho uma determinada pasta no servidor(fora das dependencias do projeto) só com imagens e preciso enviá-las ao cliente como um simples download.

O problema é que os arquivos a.pdf e .jpg abrem direto na tela exibindo apenas um código estranho q sinceramente não sei o q é.

%PDF-1.4 %���� 1 0 obj <</Type/XObject/ColorSpace/DeviceRGB/Subtype/Image/BitsPerComponent 8/Width 793/Length 1141785/Height 1112/Filter/DCTDecode>>stream �����JFIF��d�d�����RExif��II*�����i�������������������,�������LEAD Technologies Inc. V1.01�����C����C���X"��������������a �������}�!1AQaa"q2���#B��R��$3br� %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz�����������������������������������������������������������������������������������a �����a�w�!1AQaaq"2�B���� #3R�br�
Já rodei a internet toda, ou quase toda, testei todo tipo de código para envio do orquivo, transformação do arquivo físico em bytes[] mas nada funciona.
DETALHE: a rotina que uso para passar o arquivo ara o cliente é a mesma usada para passar um relatório em outra tela e funciona.
talvezpossa ser algum erro na página, alguma coifiguração ninja misteriosa em algum canto perdido.
quem puder ajuda ae plz.

abraço.

seguem os códigos:

File f = new File(this.dirCertificados + fileName + ".jpg"); if (f.exists()) { downloadImageFromFile(f);

[code]public void downloadImageFromFile(File file) throws Exception {
System.out.println("downloading…");
System.out.println(file.getName());
System.out.println(file.getPath());

	if (!file.exists())
		throw new FileNotFoundException("Arquivo não encontrado!");

	this.download(this.fileToByte(file), file.getName());

}
[/code]

[code]public void download(byte[] arquivo, String fileName) throws IOException {

	FacesContext facesContext = FacesContext.getCurrentInstance();
	HttpServletResponse response = (HttpServletResponse) facesContext
			.getExternalContext().getResponse();

	response.setContentType("application/octet-stream");

	response.setContentLength(arquivo.length);

	response.addHeader("Content-Disposition", "attachment; filename="
			+ "\"" + fileName + "\"");

	response.getOutputStream().write(arquivo);
	response.getOutputStream().flush();
	response.getOutputStream().close();
	facesContext.responseComplete();

}

[/code]

Tente mudar response.setContentType("application/octet-stream"); para response.setContentType("image/jpeg");

[RESOLVIDO]

¬¬

foi mal ae galera… a parada não funciona legal com a4j:commandButton… se alguem souber o pq posta ae plz.!

Abraço;

já havia tentado isso. o problema foi no botão msm.