JavaEE7でJavaMailを試す
環境
NetBeans8.1
Glassfish4.1
問題点
Glassfish4.1.1ではなぜかglassfishのメールセッションの設定ができない
参考
www.youtube.com
※英語でも動画で作業をなぞるとできるもんです
画面設定
index.xhtml
<?xml version='1.0' encoding='UTF-8' ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://xmlns.jcp.org/jsf/html"> <h:head> <title>Facelet Title</title> </h:head> <h:body> <h:form prependId="false"> <h:commandButton value="送信" action="#{mailBean.send()}"></h:commandButton> </h:form> </h:body> </html>
MailBean.java
/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package bean; import javax.annotation.Resource; import javax.inject.Named; import javax.enterprise.context.RequestScoped; import javax.mail.Message; import javax.mail.MessagingException; import javax.mail.Session; import javax.mail.Transport; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeMessage; /** * */ @Named(value = "mailBean") @RequestScoped public class MailBean { @Resource(name="mail/gmail") private Session session; public void send(){ Message msg = new MimeMessage(session); try{ msg.setSubject("aaaaa"); msg.setText("aaaaaaa"); msg.setRecipients(Message.RecipientType.TO, InternetAddress.parse("送信先のメールアドレス@gmail.com")); Transport.send(msg); } catch(MessagingException e){ e.printStackTrace(); } } }
glashfish設定
ここまで
所感
Javaの場合は最新の技術というより保守に向けてのやり方の方が安定しているので
あまり最新のことに凝った情報が見つけきれない感じがする。
あったと思ってもちょっとコアすぎでで???って状態があるので
自分がつまづいている部分が本来ありえない場所だからかな…