eclipseで開発/J2EE/J2EEでJavaMail
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
←TopPage>[[eclipseで開発]]>[[J2EEしてみんとす>eclipseで開...
#navi([[eclipseで開発/J2EE]])
*J2EEでJavaMail
#contents
**はじめに
Lomboz-MLで「JavaMailのactivation.jarがロードできないエラ...
参照: Lomboz-ML http://www.egroups.co.jp/group/Lomboz
**Servletの作成準備
まずは、J2EE Projectを準備します。
|プロジェクト名|JavaMailProject|
|Webモジュール名|JavaMailWeb|
|サーバ|J2EE RI 1.3.1|
参照: [[../J2EEプロジェクト作成]]
注意:
J2EE RI 1.3.1を利用するために、<eclipse.home>/plugins/c...
Servlet Wizardで、Servletを作成します。
|パッケージ名|test|
|クラス名|JavaMailServlet|
参考: [[../WAR作成]]
**メイルを送信コードを作成
***サーブレットにwebdocletを埋め込む
サーブレットプログラムを修正します。
まず、JavaMailのセッションリリースを利用するためにJavaMai...
* @web:servlet name="JavaMailServlet"
* display-name="JavaMail TEST Servlet"
* load-on-startup="1"
* @web:servlet-mapping url-pattern="/JavaMailTest/*"
* @web:resource-ref
* name="TheMailSession"
* type="javax.mail.Session" auth="Application"
***サーブレットのメール送信コード作成
メール送信処理は「J2EEチュートリアル」を参考にして作りま...
「リソース接続」→「メールセッション接続」にあるConfirmerE...
参照: [[J2EEチュートリアル:http://jdc.sun.co.jp/j2ee/tuto...
''ここで注目すべきは、Mailセッションの取得方法です。''
JavaMailをJ2EEコンテナが無いtomcat上や、JavaMailを単独で...
Properties props = new Properties();
props.put("mail.smtp.host","mail");
Session session = Session.getDefaultInstance(props,null);
とはせず、以下のようにInitialContextよりJNDIにより取得す...
Context initial = new InitialContext();
Session session =
(Session) initial.lookup("java:comp/env/TheMailSessio...
このようにすることにより、Beanのプログラム時ではなく、ア...
この作業分担が、Beanのコンポーネント化には、非常に役立ち...
***サーブレットメイン処理作成
サーブレットが呼び出されたときに画面を作成しながらメイル...
public void service(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
// ContentTypeを設定
response.setContentType("text/html; charset=euc-jp");
// 出力用PrintWriterを取得
PrintWriter out = response.getWriter();
// 出力
out.println("<html>");
out.println("<head>");
out.println("<title>Hello World Servlet</title>");
out.println("</head>");
out.println("<body>");
out.println("Hello World<BR>");
sendNotice("-SendMailAddress-");
↑ここは送信先のメイルアドレスにする。
out.println("Sent mail.");
out.println("</body>");
out.println("</html>");
}
ここで使われるstatic変数も定義します。
private static final String mailer = "JavaMailer";
完成したソース
#ref(JavaMailServlet.java)
を、このページに添付します。
**WARを作ります
Servletクラスを保存して、deployを行います。パッケージ・エ...
注意:
Lombozに内蔵されているXDocletのWARを作成する。webdocletを...
deployと命令していますが、上で設定したRI.serverではWARの...
参考: [[../WAR作成]]
**J2EE RI 1.3.1でdeployする
***J2EE起動してdeploytoolを立ち上げる
% j2ee -verbose
別のコンソール(kterm)で
% deploytool
***J2EEアプリケーションの作成
**EARファイルを作る
#ref(deployNewApp.png)
[ファイル]→[新規]→[アプリケーション]
新規アプリケーションのダイアログで、EARファイルの置き場所...
「<eclipse.workspace>/JavaMailProject/JavaMailProject.ear」
を指定して[新規アプリケーションの作成]をPush
アプリケーションの表示名はdefaultの「JavaMailProject」ま...
#ref(deployAddWar.png)
作成したアプリケーションを選択して「ファイル」→「アプリケ...
**アプリケーションの設定
#ref(deployContext.png)
まずは、コンテキストルートを設定します。「TEST」と入力し...
#ref(deployJNDI.png)
次にJNDIを設定します。JavaMailProjectの「JNDI名」タグの「...
メイル・セッションの設定を行います。「Generate by XDoclet...
#ref(deployMailSession.png)
ここで、
|JNDI名|MyMailer||
|送信元|root@yourserver.com|メールアドレス|
|ホスト|localhost|メールサーバ|
|ユーザ名|You Namail|リアルネーム|
を入力する。
ここでのアセンブル時に、はじめてメールサーバを指定するこ...
これがJ2EEコンテナを利用する時に初めて出会う
、コンポーネントであるBeanを開発するBeanプロバイダーと、...
**アプリケーションのバリデーション
J2EEの配備(deploy)の前にアプリケーションの整合性を調べま...
JavaMailProjectアプリケーションを選択して、「ツール(T)」→...
#ref(deployVerify.png)
SIZE(1):TabLibのロケーションが違うと出ているのはご愛嬌な...
**アプリケーションの配備(deploy)
JavaMailProjectアプリケーションを選択して「ツール(T)」→「...
#ref(deployDeploy1.png)
defaultのまま「完了」すると、配備は、順調に終わるはずです。
**動作確認
さて、動作確認です。ブラウザーで
http://localhost:8000/TEST/JavaMailTest/
をアクセスします。ブラウザーに
Hello World
Sent mail.
と表示されて、メイルが送信されるはずです。
注意:
サンプルソースで、送信先アドレスを直していないと、以下の...
javax.servlet.ServletException: Sending failed;
nested exception is:
javax.mail.SendFailedException: Invalid Addresses;
nested exception is:
javax.mail.SendFailedException:
550 5.1.1 <-SendMailAddress->... User unknown
*最後に
サンプルとしてeclipse + Lomboz 2.1のJ2EEプロジェクト一式を
#ref(JavaMailProjectSample.zip)
として、このページに添付しました。
このプロジェクトの中には、コンパイル済みのバイナリ、WARフ...
ただし、メイルの送信先が-SendMailAddress-のままなので、そ...
----
[[←もくじに戻る>../#index]]
**コメントをどうぞ…
コメント例: J2EEコンテナでは、MailセッションをJNDIで取得...
#pcomment(,10,reply)
#navi([[eclipseで開発/J2EE]])
←TopPage>[[eclipseで開発]]>[[J2EEしてみんとす>eclipseで開...
終了行:
←TopPage>[[eclipseで開発]]>[[J2EEしてみんとす>eclipseで開...
#navi([[eclipseで開発/J2EE]])
*J2EEでJavaMail
#contents
**はじめに
Lomboz-MLで「JavaMailのactivation.jarがロードできないエラ...
参照: Lomboz-ML http://www.egroups.co.jp/group/Lomboz
**Servletの作成準備
まずは、J2EE Projectを準備します。
|プロジェクト名|JavaMailProject|
|Webモジュール名|JavaMailWeb|
|サーバ|J2EE RI 1.3.1|
参照: [[../J2EEプロジェクト作成]]
注意:
J2EE RI 1.3.1を利用するために、<eclipse.home>/plugins/c...
Servlet Wizardで、Servletを作成します。
|パッケージ名|test|
|クラス名|JavaMailServlet|
参考: [[../WAR作成]]
**メイルを送信コードを作成
***サーブレットにwebdocletを埋め込む
サーブレットプログラムを修正します。
まず、JavaMailのセッションリリースを利用するためにJavaMai...
* @web:servlet name="JavaMailServlet"
* display-name="JavaMail TEST Servlet"
* load-on-startup="1"
* @web:servlet-mapping url-pattern="/JavaMailTest/*"
* @web:resource-ref
* name="TheMailSession"
* type="javax.mail.Session" auth="Application"
***サーブレットのメール送信コード作成
メール送信処理は「J2EEチュートリアル」を参考にして作りま...
「リソース接続」→「メールセッション接続」にあるConfirmerE...
参照: [[J2EEチュートリアル:http://jdc.sun.co.jp/j2ee/tuto...
''ここで注目すべきは、Mailセッションの取得方法です。''
JavaMailをJ2EEコンテナが無いtomcat上や、JavaMailを単独で...
Properties props = new Properties();
props.put("mail.smtp.host","mail");
Session session = Session.getDefaultInstance(props,null);
とはせず、以下のようにInitialContextよりJNDIにより取得す...
Context initial = new InitialContext();
Session session =
(Session) initial.lookup("java:comp/env/TheMailSessio...
このようにすることにより、Beanのプログラム時ではなく、ア...
この作業分担が、Beanのコンポーネント化には、非常に役立ち...
***サーブレットメイン処理作成
サーブレットが呼び出されたときに画面を作成しながらメイル...
public void service(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
// ContentTypeを設定
response.setContentType("text/html; charset=euc-jp");
// 出力用PrintWriterを取得
PrintWriter out = response.getWriter();
// 出力
out.println("<html>");
out.println("<head>");
out.println("<title>Hello World Servlet</title>");
out.println("</head>");
out.println("<body>");
out.println("Hello World<BR>");
sendNotice("-SendMailAddress-");
↑ここは送信先のメイルアドレスにする。
out.println("Sent mail.");
out.println("</body>");
out.println("</html>");
}
ここで使われるstatic変数も定義します。
private static final String mailer = "JavaMailer";
完成したソース
#ref(JavaMailServlet.java)
を、このページに添付します。
**WARを作ります
Servletクラスを保存して、deployを行います。パッケージ・エ...
注意:
Lombozに内蔵されているXDocletのWARを作成する。webdocletを...
deployと命令していますが、上で設定したRI.serverではWARの...
参考: [[../WAR作成]]
**J2EE RI 1.3.1でdeployする
***J2EE起動してdeploytoolを立ち上げる
% j2ee -verbose
別のコンソール(kterm)で
% deploytool
***J2EEアプリケーションの作成
**EARファイルを作る
#ref(deployNewApp.png)
[ファイル]→[新規]→[アプリケーション]
新規アプリケーションのダイアログで、EARファイルの置き場所...
「<eclipse.workspace>/JavaMailProject/JavaMailProject.ear」
を指定して[新規アプリケーションの作成]をPush
アプリケーションの表示名はdefaultの「JavaMailProject」ま...
#ref(deployAddWar.png)
作成したアプリケーションを選択して「ファイル」→「アプリケ...
**アプリケーションの設定
#ref(deployContext.png)
まずは、コンテキストルートを設定します。「TEST」と入力し...
#ref(deployJNDI.png)
次にJNDIを設定します。JavaMailProjectの「JNDI名」タグの「...
メイル・セッションの設定を行います。「Generate by XDoclet...
#ref(deployMailSession.png)
ここで、
|JNDI名|MyMailer||
|送信元|root@yourserver.com|メールアドレス|
|ホスト|localhost|メールサーバ|
|ユーザ名|You Namail|リアルネーム|
を入力する。
ここでのアセンブル時に、はじめてメールサーバを指定するこ...
これがJ2EEコンテナを利用する時に初めて出会う
、コンポーネントであるBeanを開発するBeanプロバイダーと、...
**アプリケーションのバリデーション
J2EEの配備(deploy)の前にアプリケーションの整合性を調べま...
JavaMailProjectアプリケーションを選択して、「ツール(T)」→...
#ref(deployVerify.png)
SIZE(1):TabLibのロケーションが違うと出ているのはご愛嬌な...
**アプリケーションの配備(deploy)
JavaMailProjectアプリケーションを選択して「ツール(T)」→「...
#ref(deployDeploy1.png)
defaultのまま「完了」すると、配備は、順調に終わるはずです。
**動作確認
さて、動作確認です。ブラウザーで
http://localhost:8000/TEST/JavaMailTest/
をアクセスします。ブラウザーに
Hello World
Sent mail.
と表示されて、メイルが送信されるはずです。
注意:
サンプルソースで、送信先アドレスを直していないと、以下の...
javax.servlet.ServletException: Sending failed;
nested exception is:
javax.mail.SendFailedException: Invalid Addresses;
nested exception is:
javax.mail.SendFailedException:
550 5.1.1 <-SendMailAddress->... User unknown
*最後に
サンプルとしてeclipse + Lomboz 2.1のJ2EEプロジェクト一式を
#ref(JavaMailProjectSample.zip)
として、このページに添付しました。
このプロジェクトの中には、コンパイル済みのバイナリ、WARフ...
ただし、メイルの送信先が-SendMailAddress-のままなので、そ...
----
[[←もくじに戻る>../#index]]
**コメントをどうぞ…
コメント例: J2EEコンテナでは、MailセッションをJNDIで取得...
#pcomment(,10,reply)
#navi([[eclipseで開発/J2EE]])
←TopPage>[[eclipseで開発]]>[[J2EEしてみんとす>eclipseで開...
ページ名: