Enviando Emails Utilizando JavaMail e Gmail no JBoss AS 7.1.2 (JBoss EAP 6)

Postado em

Olá amigos,

O post de hoje é sobre como podemos enviar emails pela nossa aplicação utilizando JavaMail. Vamos utilizar o Gmail como smtp server.  Eu desenvolvi um pequeno exemplo utilizando primefaces onde o usuário digita o email de destino, assunto e conteúdo do email.  Antes de chegar nessa aplicação primeiros vamos configurar o JBoss.

O primeiro passe é editar o subsystem mail no arquivo standalone.xml ou domain.xml. Configure-o para utilizar um servidor smtp que nesse caso é o gmail.

<subsystem xmlns="urn:jboss:domain:mail:1.0">
  <mail-session jndi-name="java:jboss/mail/Gmail">
    <smtp-server ssl="true" outbound-socket-binding-ref="mail-smtp">
       <login name="blog.jbossdivers@gmail.com." password="minhasenhadificil"/>
    </smtp-server>
  </mail-session>
</subsystem>

A configuração é bem simples e auto explicativa. O remetente dos emails sempre será blog.jbossdivers@gmail.com. Vamos utilizar o nome java:jboss/mail/Gmail para realizar o lookup com o @Resource.

Agora adicione ao socket-binding-group a seguinte configuração:

<outbound-socket-binding name="mail-smtp">
   <remote-destination host="smtp.gmail.com" port="465"/>
</outbound-socket-binding>

A configuração no JBoss está finalizada.  O proxímo passo é a criação de uma aplicação para enviar emails utilizando o recurso configurado. Como disse no inicio do post eu desenvolvi uma pequena aplicação para que nós possamos realizar os testes. Vou deixar nos links abaixo:

Na aplicação colocamos o email do destinatário, assunto e conteúdo. Veja:

Veja o email no destinatário:

Isso é um exemplo bem simples de como esse recurso pode ser utilizado. Por exemplo,  poderíamos criar um MBean para monitorar o consumo de memória e enviar um email alertando um possível problema.

Espero que tenha ajudado.

Abraços

6 comentários em “Enviando Emails Utilizando JavaMail e Gmail no JBoss AS 7.1.2 (JBoss EAP 6)

    Renato disse:
    13 de junho de 2013 às 14:04

    Olá Maurício,

    Aqui estou eu novamente.🙂

    Como já lhe disse estou com meu JBoss ( JBoss EAP 6.1.0 GA) funcionando no modo “Domain” perfeitamente. A nova interface da console ficou muito boa e muito mais intuitiva, e agora estou querendo enviar por email para o desenvolvedor os erros de aplicação.

    Gostei muito deste assunto e queria saber se você já tem ou conhece onde posso conseguir um MBean que envie email com erros de aplicação para que o desenvolvedor possa corrigi-los.

    Abs,

      Mauricio Magnani Jr respondido:
      14 de junho de 2013 às 13:52

      Oi Renato😀

      Cara eu já fiz isso uma vez só tenho que lembra como!

      Vou dar uma procurada e te aviso.

      Abs

    Renato disse:
    14 de junho de 2013 às 15:01

    Maurício,

    Valeu amigo.🙂

      Mauricio Magnani Jr respondido:
      18 de junho de 2013 às 12:22

      Ow Renato eu ainda não achei um jeito mas eu nao esqueci nao rsrs a solução que eu tinha era para o JBoss AS 6 rs

    Renato disse:
    25 de junho de 2013 às 16:15

    Olá Maurício,

    Estou fazendo teste de envio de email’s com o JBoss só que estou tendo
    dificuldades. Estou usando meu servidor de correio só que quando faço as
    configurações para usar SSL estou recebendo o seguinte erro:

    “javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target”

    Quando desligo o SSL ocorre um outro erro:

    “com.sun.mail.smtp.SMTPSendFailedException: 554 qmail-dk: Cannot sign message due to invalid message syntax. (#5.3.0)”

    Será que por acaso você tem a sua aplicação de teste sem o uso do SSL?
    Acho que sem o uso do SSL vai funcionar!

      Mauricio Magnani Jr respondido:
      25 de junho de 2013 às 21:36

      Hum tendi… tem um esqueminha que pode te ajudar… eu vou procurar aqui e posto amanhã🙂

      Abs

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s