簡體   English   中英

在JAVA EE 6中發送電子郵件

[英]Sending e-mails in JAVA EE 6

我正在開發一個部署在glassfish上的Java EE 6應用程序,我一直在閱讀有關如何發送電子郵件的教程,但它們似乎已經過時或過於復雜。 我希望可能在這個規范中有一種相當簡單的發送郵件的方式,因為很多東西變得如此簡單。 你能指出我正確的方向還是可以給我看一些示例代碼?

您可以使用apache commons電子郵件,或者如果您使用Spring,則使用spring郵件 如果您不想使用任何包裝器庫和代碼示例 ,則始終存在JavaMail

所有這些鏈接都有代碼示例。

JEE App Server應提供電子郵件資源。 您需要做的唯一考慮是查找資源(我認為它已配置)並發送電子郵件。

//Mail  Resource injection not working on wildfly 10
//@Resource(lookup = "java:/futuramail")
private Session mailSession;

@Asynchronous
@Lock(LockType.READ)
    public void sendMail(String recipient, String subject, String text) {
        try {

            InitialContext ic = new InitialContext();
            mailSession = (Session) ic.lookup("java:/futuramail");
            MimeMessage message = new MimeMessage(mailSession);
            Address[] to = new InternetAddress[]{new InternetAddress(recipient)};
            message.setRecipients(Message.RecipientType.TO, to);
            message.setSubject(subject);
            message.setSentDate(new Date());
            message.setContent(text, "text/html");
            //message.setText(text);
            Transport.send(message);
            System.out.println("mail sent");
        } catch (MessagingException me) {
            me.printStackTrace();
        } catch (NamingException ex) {
            Logger.getLogger(MailProcessor.class.getName()).log(Level.SEVERE, null, ex);
        }
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM