<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Injeção de imagens em templates de e-mail - Plugin Grails Mail]]></title><description><![CDATA[<p dir="auto">Em alguns contextos pode ser necessário enviar e-mails fazendo uso de templates <em>.gsp</em> e que contenham imagens dentro de <em>tags &lt;img&gt;</em>.</p>
<p dir="auto">Porém, neste modelo de envio de mensagens, a injeção de conteúdo estático oriundo de web-apps/ é um pouco diferente.</p>
<p dir="auto">Passo a passo:</p>
<p dir="auto">O método responsável por enviar a mensagem deve ser do tipo <em>multipart true</em>. Essa propriedade deve ser declarada por primeiro na Clouse do método.</p>
<p dir="auto">Abaixo da injeção da propriedade <em>html</em> deve ser incluído cada uma das imagens a serem utilizadas no conteúdo da mensagem.<br />
Isso é feito através da propriedade <em>inline</em>, seguida pelo nome, mimetype e arquivo a ser usado.</p>
<pre><code>...
this.mailService.sendMail {
            multipart true
            to getTo()
            if (getCc()) {
                cc getCc()
            }
            subject getSubject()
            html getGroovyPageRenderer().render(template: getTemplate(), model: getModel())
            inline 'nomeQualquer', 'image/png',  Holders.getGrailsApplication().mainContext.getResource("images/logo.png").getFile()
        }
...
</code></pre>
<p dir="auto">Feito isso, agora é necessário inserir o link desse recurso dentro da tag &lt;img&gt;:</p>
<p dir="auto"><code>... &lt;img src="cid:nomeQualquer"&gt; ...</code></p>
<p dir="auto">Pronto, dessa forma a imagem é injetada no html da mensagem.</p>
<p dir="auto">Essa abordagem é necessária por conta da maneira como o plugin cria o conteúdo do email.</p>
<p dir="auto">Páginas e templates <em>.gsp</em> padrões do Grails (página index.gsp por exemplo) podem conter a injeção da imagem diretamente na <em>tag &lt;img&gt;</em>, com o <em>src</em> apontando para o diretório do projeto contendo o recurso.</p>
]]></description><link>http://insoft-docker1:4567/topic/73/injeção-de-imagens-em-templates-de-e-mail-plugin-grails-mail</link><generator>RSS for Node</generator><lastBuildDate>Fri, 23 Oct 2026 06:11:04 GMT</lastBuildDate><atom:link href="http://insoft-docker1:4567/topic/73.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 29 Oct 2021 13:55:11 GMT</pubDate><ttl>60</ttl></channel></rss>