De que se trata o artigo:
O uso do Spring Framework 2.5 para envio de e-mails sobre a API JavaMail. Neste artigo usamos três formas de envio de e-mails: em texto simples, em HTML (com anexo e imagem embebida) e através do Apache Velocity para criar um modelo de mensagem HTML mais flexível.

Para que serve:
Fornecer um meio mais simples para o envio de e-mails, usando Injeção de Dependência pelo Spring, obtendo uma flexibilidade maior com o uso de templates e anotações.

Em que situação o tema é útil:
Aplicações, em geral, que enviam e-mails podem utilizar este recurso com pouca adaptação e maior flexibilidade que a fornecida pela API JavaMail.

Enviando e-mails com o Spring 2.5:
O Spring também pode ser configurado para envio de e-mails. Este Framework cria uma camada sobre a API JavaMail, biblioteca ao qual depende, porém, fornece uma configuração mais simples e flexível.

Com poucas linhas de código e algumas configurações podemos criar e-mails em texto plano ou HTML, contendo imagens embebidas e arquivos anexos. O Spring também permite criar templates para o corpo do e-mail, através do Apache Velocity, separando o conteúdo da mensagem que será transmitida em relação ao código da aplicação.

No Spring Framework 2.5, muitas das configurações podem ser transmitidas através de anotações, ideal para os desenvolvedores que desejam utilizar este recurso ao invés de configurações XML.

O Spring, além de ser um contêiner de injeção de dependências, oferece uma série de características que facilitam o desenvolvimento em tarefas comuns de aplicações, como o envio de e-mails. Neste artigo aprenderemos como enviar e-mails utilizando o Spring Framework, incluindo o uso de anotações.

Como o Spring envia e-mails

Embora o Spring Framework possua uma biblioteca que auxilie o usuário no envio de e-mail, simplificando seu desenvolvimento, ainda assim, este depende das bibliotecas da API do JavaMail. A JavaMail (javax.mail) é a API padrão da plataforma Java EE para leitura e envio de e-mails, suportada oficialmente pela Sun Microsystems. Esta API suporta protocolos de envio e leitura como POP3, SMTP e IMAP, além de envio de mensagens em HTML e com anexo.

Preparando o ambiente de trabalho

Os exemplos desse artigo estão contidos em um único projeto, que pode ser baixado no site da Java Magazine. O projeto, criado no Eclipse, contém três classes que englobam os exemplos (Figura 1), além dos arquivos JARs necessários para que os mesmos funcionem.

Caso deseje preparar seu ambiente, no site do Eclipse encontramos este IDE, sendo que o pacote Eclipse Classic é suficiente para rodar os exemplos.

As bibliotecas encontradas no projeto utilizam o Spring Framework, o Apache Velocity e a API JavaMail. Para o Spring, o download pode ser feito em http://www.springframework.org/download, sendo que o arquivo spring.jar deverá ser adicionado ao projeto. O Apache Velocity pode ser baixado em http://velocity.apache.org/download.cgi, do qual utilizaremos os seguintes arquivos: commons-collections-3.1.jar, commons-lang-2.1.jar, commons-logging-api.jar e velocity-1.5.jar.

O download da API JavaMail pode ser feito no endereço http://java.sun.com/products/javamail/downloads, onde será adicionado ao projeto o arquivo mail.jar. Além desta API, se estiver utilizando uma versão anterior ao JDK 1.6, será necessário baixar a API JavaBeans Activation Framework (JAF). A API JAF pode ser baixada em http://java.sun.com/javase/technologies/desktop/javabeans/jaf/downloads, ao qual será necessário o arquivo activation.jar.

As APIs JavaMail e JAF não precisam ser adicionadas aos projetos caso esteja utilizando a plataforma Java EE, à qual já estão incorporadas.

...
Quer ler esse conteúdo completo? Tenha acesso completo