Help - exibir Imagem URL
01/06/2012 13:36
0
Ola, preciso exibir uma imagem que vem de uma url. Em um projeto anterior fiz o seguinte:

def util = new UtilTagLib();
byte[] imagem
def arquivo
try {
OutputStream outs = response.getOutputStream();
arquivo = new BufferedInputStream(new URL("${util.retornaURL()}imagens/img.png").openStream());
imagem = new byte[4 * 1024];
int bytesRead;
while ((bytesRead = arquivo.read(imagem)) != -1) {
outs.write(imagem, 0, bytesRead);
}
}
catch (Exception ex) {
log.error("Erro", ex)
}

Porem eu usava a versao do grails 1.3.4 e agora estou na versao 2.0.1 e estoura erro pra mim na linha

arquivo = new BufferedInputStream(new URL("${util.retornaURL()}imagens/img.png").openStream());


Alguem tem alguma ideia.

muito obrigada
Tags: grails 2.0.1 url


0
Olé vanessa! Bom não sei se entendi direito e se isso pode te ajudar

<img style="width: 30px;height: 30px" src="${createLink(controller:'foto', action:'showImagem', id:foto.id)}" title="${foto.descricao}" >


def showImagem = {

def p = FotosRq1006.get(params.id)

response.outputStream << p.foto

}
01/06/2012 17:37


0
oie manthay, infelizmente isso não me atende.
Por exemplo eu preciso exibir uma imagem porém a mesma é uma url.

obrigada
01/06/2012 17:55


0
mas voce vai exibir na gsp ou em um relatorio?

no meu relatório eu faço assim, porem eu ainda não intendi muito bem mas se te servir .......

String obterUrl() {
String url = request.getRequestURL().toString();
String appName = grailsApplication.metadata.getApplicationName();

String res
try {
res = url.substring(0,url.indexOf(appName))+resource(dir:'images', file:'logo_impressao.jpg').substring(1);
}
catch (Exception e) {
res = 'http://www.clicksistemas.com.br'+resource(dir:'images', file:'logo_impressao.jpg');
}
return res;
}
01/06/2012 18:06


0
Olá,

Amigo, já tentou isso?

byte[] imagem
def arquivo
try {
OutputStream outs = response.getOutputStream();
arquivo = new BufferedInputStream(new URL("${util.retornaURL()}imagens/img.png").openStream());

response.outputStream << arquivo.bytes
}
catch (Exception ex) {
log.error("Erro", ex)
}


0
Aliás, a linha
OutputStream outs = response.getOutputStream();

Pode ser retira. Deixei ela ai sem querer.


0
Veja se este plugin para trabalhar com imagens pode lhe ajudar:
www.grails.org/plugin/image-tools
02/06/2012 13:20


0
Oi José Yoshiriro

meu problema é que estoura erro nessa linha

arquivo = new BufferedInputStream(new URL("${util.retornaURL()}imagens/img.png").openStream());

Essa mesma linha funciona no grails 1.3.4 e agora estou na versao 2.0.1 e não rola.

obrigada
04/06/2012 13:31


0
Olá, Vanessa.

Já tentou direto?
response.outputStream << new URL("${util.retornaURL()}imagens/img.png").openStream().bytes

Se ainda assim não funcionar, sugiro que relate o problema no Issue Tracker do Grails.


0
Qual é o erro exatamente?
04/06/2012 16:36


0
Ola José Yoshiriro

tentei direto e tbm nao rolou, continua dando erro

openStream in java.net.URL

obrigada
04/06/2012 16:36


0
Olá, Vanessa.

Também estou curioso sobre o erro. Pode colar o Stacktrace aqui pra nós?

Ah, e pode me chamar só de Yoshi mesmo, ok?



Ainda não faz parte da comunidade???

Para se registrar, clique aqui.


Aprenda Groovy e Grails com a Formação itexto!

Newsletter Semana Groovy

Assinar

Envie seu link!


Livro de Grails


/dev/All

Os melhores blogs de TI (e em português) em um único lugar!

 
Creative Commons
RSS Grails Brasil é mantido por itexto Consultoria.
Em caso de problemas contacte Henrique Lobo Weissmann (Kico) por e-mail: kico@itexto.com.br
Todo o conteúdo presente neste site adota o Creative Commons como licença padrão.
Ver: 4.14.0
itexto