Imagem com response.outputStream
Postado em 24/01/2012 19:14
0
0
Oi galera, esse é meu primeiro posto no Grails Brasil, espero que vcs me ajudem.
Sei que existem vários posts aqui no forum sobre o assunto, vi todos, mas após testar várias maneiras nenhuma solucionou meu problema...

É o seguinte, preciso renderizar o avatar da pessoa na tela de profile, e ja testei a seguinte action no controlador:

def avatar(){
def usuarioInstance = springSecurityService.currentUser
if(usuarioInstance.avatar){
response.outputStream << usuarioInstance.avatar
}else{
response.sendError(404)
}
}


e na view:

<img src="${createLink(controller:'usuario', action:'avatar')}" width="100" height="100"/>


porém o que acontece é o seguinte: no local da imagem aparece o simbolo de imagem quebrada, e quando clico com o direito e coloco para abrir a imagem em uma nova guia, aparece apenas o nome da imagem(ex: avatar.jpg) nesta nova guia... Alguém ai por favor pode solucionar este problema? Ja passei o dia todo tentando achar uma solução...
Tags: imagem gsp createlink
SkrilleX
Pontos: 4






0
0
26/01/2012 21:30
Você já verificou se o springsecutity está retornando a instância do usuário?

Tenta isso:

def usuarioInstance = Usuario.get(SpringSecurityService.principal.id)
println usuarioInstance


Testa na console do grails se o resultado está sendo retornado. Verifique também se você injetou corretamente o serviço do SpringSecurity no seu controlador e se o objeto outputStream está retornando alguma coisa.

Abraços.

CarlosG
Pontos: 177



0
0
27/01/2012 00:53
O spring security esta retornando corretamente a instancia do usuário, tanto é que quando abro a imagem em uma nova guia, aparece o titulo da imagem pertencente ao respectivo usuário. Será algum problema ao dar upload da imagem, ou algum problema com o formato?

Obrigado...


Andrei Maxwel
Pontos: 67



0
0
27/01/2012 00:56
Ps.: vim tentar resolver isso na casa do Andrei, e usei a conta dele sem querer...
Não conseguimos resolver isso...

Andrei Maxwel
Pontos: 67



0
0
27/01/2012 14:00
Segui o tutorial esse link postado pelo CarlosG em outro post aqui no Grails e obtive o resultado desejado...

Obrigado!

SkrilleX
Pontos: 4



 


Esqueceu sua senha?
 
Grails Brasil é mantido por itexto Desenvolvimento de Projetos Ltda.
Em caso de problemas, sinta-se livre para procurar Henrique Lobo Weissmann (Kico) por e-mail: kicolobo@itexto.net
Todo o conteúdo presente neste site adota o Creative Commons como licença padrão (clique no logo à direita para maiores detalhes)