Como exibir imagem através de servlet

4 respostas
vanzella

Bom dia pessoal, estou com dificuldade de encontrar uma forma para exibir uma imagem em uma determinada posicção em uma jsp, estou utilizando array de bytes como no exemplo abaixo:

response.setContentType("image/jpeg");
			ServletOutputStream sos;
			sos = response.getOutputStream();
		        BufferedInputStream bi = new BufferedInputStream(assinaturaVo.getImagemAssinatura());
			int b;
			byte[] buf = new byte[10240];
			while ((b = bi.read(buf, 0, 10240)) != -1)
			{
				sos.write(buf, 0, b);
			}

O problema é que só consigo abrir uma pagina jsp que contenha a imagem, queria adicionar algumas tags html e em um lugar especifico colocar esta imagem.

4 Respostas

F

No jsp voce pode colocar um img src para o servlet

<img src="http://localhost:8080/Web/CreateImg?cidade=2996&op=1" alt="Clique na imagem para mais detalhes" width="135" height="132" border="0">
vanzella

FelipeMello:
No jsp voce pode colocar um img src para o servlet

<img src="http://localhost:8080/Web/CreateImg?cidade=2996&op=1" alt="Clique na imagem para mais detalhes" width="135" height="132" border="0">

Neste caso como ficaria o fluxo? Eu teria uma servlet somente para gerar a imagem?

F

O JSP ficaria responsavel pela camada view.

Acho que o correto é separar as camadas.

T

Vocêr precisa ter um servlet só para gerar a imagem, já que o browser não consegue obter a página HTML e as figuras inseridas nele usando apenas uma URL.
Mesmo que ele use fisicamente apenas um socket (usando o recurso de “keep-alive” que está disponível a partir do HTTP 1.1) , a página HTML e as figuras têm de vir como entidades separadas.
Normalmente o servlet obtém os dados necessários para a geração da imagem a partir da sessão e/ou dos parâmetros de GET (não de POST).

Criado 22 de abril de 2008
Ultima resposta 22 de abr. de 2008
Respostas 4
Participantes 3