assetResourceLocator.findAssetForURI não localiza o recurso
13/02/2017 17:28
0
Caríssimos membros,

Estou utilizando a versão 2.5.5. do Grails com o plugin  asset-pipeline versão 2.13.1

Tenho uma imagem user.jpg, que está no seguinte diretório: grails-app\assets\images\ace\avatars

Utilizo o seguinte comando para pegar a path completa com o nome do arquivo:

assetResourceLocator?.findAssetForURI("images\ace\avatars\user.jpg").GetURI(), porém retorna nulo.

Tentei uma série de combinações, com o mesmo resultado.

Ex:  assetResourceLocator?.findAssetForURI("assets\images\ace\avatars\user.jpg").GetURI()
assetResourceLocator?.findAssetForURI("grails-app\assets\images\ace\avatars\user.jpg").GetURI()

Poderiam me ajudar?

Obrigado!
Tags: Grails, asset-pipeline, assetResourceLocator, findAssetForURI


0
Bom dia

 vc quer pegar essa imagem  no controller? ou na view?
nao entendi pq o GetURI() .. se vc esta dando um findAssetForURI passando a uri como parametro  pq ta chamando o getURI?
14/02/2017 11:03


0
Olá Willian.

Está imagem será pega na view. Mas tenho uma classe serviço que fará este trabalho no método getFotoUsuario().
Utilizo GetURI() porque findAssetForURI retorna um Resource. Tudo o que estou fazendo está em acordo com os "manuais", mas há algo errado porque de toda forma que tento a função retorna null.

Obrigado
14/02/2017 16:31


0
Ola Pedro

Dexa eu ver se entendi , vc  usa o metodo getFotoUsuario(). para pegar a uri da imagem e mostrar na view? em algum <g:img> ou <img> ? ou vc retorna o "arquivo" na view.
Por que se for para exibição da imagem creio que nao necessita de tudo isso, mesmo se o nome da imagem for o id do usuario ou sei la.
14/02/2017 17:15


0
Já tento  isso assim :

assetResourceLocator.findAssetForURI("user.jpg").getURI()
14/02/2017 17:22


0
Olá William,
Sim já tentei. Você já usou ou usa este recurso?
15/02/2017 18:01


0
Ola Pedro

esse recurso propriamente dito não uso não , uso o Assets de outra maneira

<asset:image src="/user/user.jpg" alt="" />

ou

${assetPath(src:'/user/user.jpg')}
16/02/2017 09:56


0
Obs: o /assets não precisa colocar!!! só as subpastas ate o arquivo mesmo 

Aqui no dashboard para pegar  a foto do usuario por id , por exemplo   eu faço assim

<asset:image src="/user/${user.id}.jpg" alt="" />

ou

${assetPath(src:'/user/ '+ user.id +'.jpg')}
16/02/2017 10:09



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