Img de 26.000 X 6.000 -- Problemas ao exibir

Ola galera, tenho esta pequeninha imagem e tenho que exibir ela na minha pagina…

<h:graphicImage id="imagemVisualizador" styleClass="imagemVisualizador" value="#{visualizador.visualizador.arquivoVisualizacao}" />
seto pro graphicImage uma url que vai chegar no meu servlet…
e vai chamar…

[code]FileInputStream in = new FileInputStream(arquivo);
ServletOutputStream sos = response.getOutputStream();
byte[] buf = new byte[10240];
int cont = 0;
while ((cont = in.read(buf)) >= 0)
{
sos.write(buf, 0, cont);
}

		in.close();
		sos.close();[/code]

mas nao sei porque raios… depende do navegador/maquina a imagem n abre…
da uma exception de IO no servidor…
ClientAbortException

SEVERE: Erro de I/O ClientAbortException: java.net.SocketException: Connection reset by peer: socket write error

alguem me ajuda
tem um tamanho de buffer que seja mais padrao ?
ja tentei diminuir… ja tentei aumentar… sei la…

ja tentei

IOUtils.copyLarge(fis,fos);

tbm …

// ServletOutputStream sos = response.getOutputStream(); // RenderedOp src = JAI.create("fileload", arquivo); // String extensao = Arquivo.getExtensao(arquivo); // ImageEncoder encoder = ImageCodec.createImageEncoder(extensao,sos, null); // encoder.encode(src);

PS:MIME TYPE

ServletContext sc = getServletContext(); String mimeType = sc.getMimeType(caminhoFisicoDaImagem); response.setContentType(mimeType);

Bom … isso deve ocorrer pq vc esta tentando enviar um arquivo muito grande. No seu web.xml existe uma propriedade chamada MaxRequestSize(ler as primeiras linhas) dentro do RichFacesFilter. Mude o valor para um tamanho maior, sempre em bytes.

cara essa propriedade ta em 200.000.000
ta foda ^^

Esse buffer tá muito grande, não tá?

ao invéz de 10240, coloque 1024 :stuck_out_tongue:

e não esqueça do flush()

como ja disse em cima…
ja foi tentado diminuir o buffer …exatamente para 1024 …
e aumentar … ja foi testado com 8k e poko… com 10k… 20k
ja tentei carregar o bytearray todo e escrever de uma vez …

Alguma sugestao?
Tentei mudar o caminho da imagem, desviando do servlet…
pegando direto a url do arquivo…
e em alguns browser/maquina … ainda ta dando o erro.
o browser cancela a requisição …
n sei porque raios.

ta acontecendo muito no ie …
help ae