Dúvida sobre vraptor-simplemail-4.1.0

瀏覽次數:122 次
跳到第一則未讀訊息

Felipe dos Santos Assis

未讀,
2015年8月28日 清晨7:23:162015/8/28
收件者:caelum-vraptor
Bom dia pessoal,

Estou implementando um envio de e-mail com template, porém está acontecendo a seguinte exceção:

"java.lang.IllegalArgumentException: Subject not defined for email template : formContatoRapido"

Este é meu método:

public void enviarEmail(String template, String assunto, String nomeParametro, Object parametro,
            String destinatario, String emailDestinatario) throws ApplicationException {
        try {
            Email email = templates.template(template)
                    .with(nomeParametro, parametro)
                    .to(destinatario, emailDestinatario)
                    .setSubject(assunto);
           
            mailer.send(email);
        } catch (Exception e) {
            LOGGER.error(e.getCause());
            throw new ApplicationException(e);
        }
    }

Examinando o código fonte, verifiquei que o método TemplateMailer.template() espera 2 parâmetros name e nameParameters porém não encontrei a referência destas mudanças na documentação. Neste caso, qual é a maneira correta para fazer o envio de e-mail com base em templates criados com Freemaker?

Obrigado

Rodrigo Turini

未讀,
2015年8月28日 清晨7:43:082015/8/28
收件者:caelum-vraptor
Oi Felipe, tudo bem? Se não me engano, basta adicionar em seu properties:

formContatoRapido = título maroto do email

Pode testar? Se funcionar, abre uma issue no plugin pra adicionar no README?
Ou se quiser ja alterar, um pull request será muito bem-vindo ;)
--
Você recebeu essa mensagem porque está inscrito no grupo "caelum-vraptor" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para caelum-vrapto...@googlegroups.com.
Para postar nesse grupo, envie um e-mail para caelum-...@googlegroups.com.
Acesse esse grupo em http://groups.google.com/group/caelum-vraptor.
Para mais opções, acesse https://groups.google.com/d/optout.

Felipe dos Santos Assis

未讀,
2015年9月7日 下午4:40:242015/9/7
收件者:caelum-vraptor、rodrigo...@caelum.com.br
Fala Rodrigo, tudo bem?

Obrigado por sua ajuda, mas ainda não deu certo. Segue as configurações do meu arquivo production.properties:

host = localhost

# Configurações do serviço SMTP - RHF Talentos/Locaweb
vraptor.simplemail.main.server = smtp.rhf.com.br
vraptor.simplemail.main.port = 587
vraptor.simplemail.main.tls = true
vraptor.simplemail.main.auth = true
vraptor.simplemail.main.from = em...@rhf.com.br
vraptor.simplemail.main.from.name = Portal RHF Talentos
vraptor.simplemail.main.username = por...@rhf.com.br
vraptor.simplemail.main.password = Fr@nqu14RHF
vraptor.simplemail.send_real_email=true

# Títulos dos e-mails enviados pela aplicação
formContatoRapido = [Portal RHF Talentos] - Nova mensagem enviada do Portal


Outra coisa que notei na configuração da minha classe é que o método nesta versão do vraptor-simplemail o DefaultTemplateMailer.template() possui um outro parâmetro (Object... nameParameters) além do nome do template. Poderia este parâmetro estar provocando o problema?

Mais uma vez obrigado!

Rodrigo Turini

未讀,
2015年9月8日 上午9:51:562015/9/8
收件者:Felipe dos Santos Assis、caelum-vraptor
Oi Felipe, tudo bem? E o erro continua o mesmo, dizendo que não tem subject?

Felipe dos Santos Assis

未讀,
2015年9月8日 晚上8:19:302015/9/8
收件者:Rodrigo Turini、caelum-vraptor
Fala Rodrigo!!!

Sim cara, continua dando erro dizendo que não tem subject.

Abs

Felipe dos Santos Assis
Analista/Desenvolvedor de Sistemas

Skype: felipe.dos.santos.assis

Rodrigo Turini

未讀,
2015年9月9日 清晨7:39:502015/9/9
收件者:Felipe dos Santos Assis、caelum-vraptor
Oi, Felipe! Como está o seu arquivo messages.properties?
E qual o texto exato que aparece na variável "template", do metodo que envia email?

Felipe dos Santos Assis

未讀,
2015年9月16日 清晨6:21:172015/9/16
收件者:Rodrigo Turini、caelum-vraptor
Fala Rodrigo, tudo bem?

​Segue os detalhes que​ me pediu:

template = "formContatoRapido"
nomeParametro =  "contato"
parametro = contato (objeto do tipo FormularioContatoDto)
assunto = (Assunto informado pelo usuário no formulário de contato)

meu template (em /src/main/resources/templates/):

<html>
    <head>
        <meta charset="UTF-8">
    </head>
    <body style="font-family: Verdana, Helvetica, Arial, sans-serif;">
        <h1>RHF Talentos - Nova Mensagem</h1>
        <p>Caro consultor,</p>
        <p>
            O visitante <strong>${ contato.nome }</strong> visitou nosso portal e enviou a seguinte mensagem:
        </p>
        <p>
            <strong>Assunto:</strong> ${ contato.assunto }<br>
            <strong>Mensagem:</strong> ${ contato.mensagem }<br>
        </p>
        <h3>Dados do visitante</h3>
        <p>
            <strong>Nome:</strong> <i>${ contato.nome }</i><br>
            <strong>E-mail:</strong> <i>${ contato.email }</i><br>
            <strong>Telefone:</strong> <i>${ contato.telefone }</i><br>
        </p>
       
        <p>Prezados Administradores,</p>
        <p>
            O visitante <strong>${ contato.nome }</strong> visitou nosso portal e enviou a seguinte mensagem:
        </p>
        <table style="width: 100%; background: #EBEBEB; border: 1px solid #CCC;">
            <tbody>
                <tr>
                    <td style="padding: 5px;">
                        <h3>${ contato.assunto }</h3>
                    </td>
                </tr>
                <tr>
                    <td style="padding: 5px;">
                        ${ contato.mensagem }
                    </td>
                </tr>
            </tbody>
        </table>
       
        <h4>Dados do visitante</h4>
        <div style="background: #EBEBEB; border: 1px solid #CCC; padding: 5px;">
            <p>
                <strong>Nome:</strong> <i>${ contato.nome }</i><br>
                <strong>E-mail:</strong> <i>${ contato.email }</i><br>
                <strong>Telefone:</strong> <i>${ contato.telefone }</i>
            </p>
        </div>
    </body>
</html>


Obrigado pela ajuda!


Felipe dos Santos Assis
Analista/Desenvolvedor de Sistemas

Skype: felipe.dos.santos.assis

Felipe dos Santos Assis

未讀,
2015年10月28日 凌晨4:43:532015/10/28
收件者:caelum-vraptor
Bom dia pessoal,

Problema solucionado! Rodrigo, o erro acontecia porque configurado o nome do template no arquivo development.properties. Aí fazendo uns debugs marotos descobri que o arquivo .properties que estava sendo carregado pela classe DefaultTemplateMailer era o messages.properties, então passei o parâmetro para lá e funcionou!!

Mais uma vez agradeço pela ajuda.

Abraços!

Rodrigo Turini

未讀,
2015年10月28日 上午10:40:172015/10/28
收件者:caelum-vraptor
boa, Felipe! e obrigado por abrir a issue. Se quiser nos mandar um PR, será muito bem-vindo! ;) Abs

--

William Marques

未讀,
2016年6月13日 上午8:29:222016/6/13
收件者:caelum-vraptor
Boa tarde!

   Poderia detalhar como você configurou? Estou tentando implementar aqui, já coloquei o nome to template no arquivo messages e nada. Ainda continua dando esse aí de subject.

Felipe dos Santos Assis

未讀,
2016年6月16日 凌晨12:50:032016/6/16
收件者:caelum-vraptor
Bom dia William tudo bem?

Na verdade o nome referente ao subject dos templates não são configurados no messages.properties e sim nos arquivos de configuração de ambiente (production.properties ou development.properties).

Na minha aplicação configurei diretamente no production.properties:

.. configurações do simple-mail

# Títulos dos e-mails enviados pela aplicação
formContatoRapido = [Portal RHF Talentos] - Nova mensagem enviada do Portal
formInteresseCadastroExistente = [Portal RHF Talentos] - Tentativa de Re-cadastro de Franqueado no Formulário de Interesse
formInteresseNovoCadastro = [Portal RHF Talentos] - Cadastro de novo Interessado


Informações sobre as configurações de ambiente você pode seguir a doc do VRaptor neste link.

Caso o problema persista ou tenha ficado dúvidas só me responder que te mando um exemplo completo do meu código, blz?

Um abraço William!

Felipe dos Santos Assis
Analista de Sistemas / Desenvolvedor
E-mail felipes...@oulook.com
Cel (14) 99659-4635
Hangout felipes...@gmail.com
Skype felipe.dos.santos.assis

--
Você recebeu essa mensagem porque está inscrito em um tópico no grupo "caelum-vraptor" dos Grupos do Google.
Para cancelar inscrição nesse tópico, acesse https://groups.google.com/d/topic/caelum-vraptor/wSBCWRc7WuI/unsubscribe.
Para cancelar inscrição nesse grupo e todos os seus tópicos, envie um e-mail para caelum-vrapto...@googlegroups.com.

Para postar nesse grupo, envie um e-mail para caelum-...@googlegroups.com.

Felipe dos Santos Assis

未讀,
2018年4月13日 下午4:05:222018/4/13
收件者:caelum-vraptor
Fala Rodrigo, tudo bem?

Será um prazer ajudar! Estou me organizando para ter um tempo disponível e contribuir com o projeto. O VRaptor é fantástico!

Abraços
回覆所有人
回覆作者
轉寄
0 則新訊息