Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Vitor Braga

[Resolvido] Mostrar imagem retornada por ajax

Recommended Posts

Olá pessoal, estou com uma dúvida de implementação.

Estou fazendo um sistema WEB em java (jsp/servlets) em que em alguns momentos utilizo AJAX.

 

A dúvida na qual estou agarrado é:

 

Tem uma parte do site em que eu clico num link "Mais informações" que ele vai requisitar mais informações de um usuário...

O que eu faço é o seguinte, ao clicar, crio um objeto xmlHttpRequest para me contactar com o servidor, e via GET, eu acesso

uma servlet java, em que eu procuro no meu banco de dados as devidas informações sobre o usuário.

 

Até aí tudo bem...O problema mesmo é na hora da resposta...eu retorno um código HTML contendo as informações do usuário, entre elas

uma tag <img> que vai chamar(deveria chamar) uma servlet para mostrar a foto.

Nesta tag <img> tem como atributo src="path_da_servlet" que faria a mostragem da foto.

O que acontece é que a foto não está sendo mostrada.

 

Eu ja testei abrir a mesma foto no momento que eu dou um refresh na página (sem AJAX), e funciona.

Com AJAX, ele não funciona, pois a servlet que mostra a foto não está sendo executada.

 

O que devo fazer?

Qual estratégia de implementação devo usar??

 

Muito agradecido!

Compartilhar este post


Link para o post
Compartilhar em outros sites

essa sua servlet não pode gerar um arquivo fisico da imagem ?

 

não trabalho com java, mas precisaria saber se existe alguma restrição dessa rotina.

Compartilhar este post


Link para o post
Compartilhar em outros sites

essa sua servlet não pode gerar um arquivo fisico da imagem ?

 

não trabalho com java, mas precisaria saber se existe alguma restrição dessa rotina.

 

Você diz criar um arquivo de imagem em uma pasta por exemplo?

Poderia sim...

 

Mas quanto a isso eu tenho algumas dúvidas:

 

1) Toda vez que eu clicar para aparecer as informações eu vou ter criar o arquivo na pasta? Ou eu vou criar antes o arquivo para

cada usuário, e somente acessar quando necessário?

 

2) É seguro guardar os arquivos em pastas??

 

Me desculpe os desconhecimentos, é que não tenho muita experiência com websites...

 

Muito obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

tecnicamente sim cara.

 

Cria o arquivo uma vez. Na próxima o arquivo já existe, então você não precisa criar novamente.

Logo, a sua rotina, antes de criar, deve primeiro verificar se já existe. Se existir usa, se não cria.

 

 

É essa solução que pensei, com base no que entendi. Oq esse servlet faz exatamente ? pq o arquivo fisico ainda não existe ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vou tentar fazer isso então.

 

A minha servlet pega a imagem no banco de dados MYSQL, em formato Blob, e cria uns outputStream la...

Assim, retorna para a página o stream da imagem.

 

Você aconselha eu não usar blob e sim arquivos físicos?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ok, entendi.

 

Cara, depende bastante da sua aplicação.. mas eu prefiro guardar no banco apenas o path para o arquivo.. para não inchar o BD, questão de performance..

Prefiro usar espaço do disco do que do banco.

 

Sei lá.. ai é coisa do teu sistema.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.