skillup

技術ブログ

Java

Javaでのメール送信プログラム

投稿日:2015年9月10日 更新日:

Javaでメール送信のプログラムがあったんで、メモ。

SMTPの認証とかはせず一番簡単なパターンです。

ケースでいうとサーバーA、サーバーBがあり下記のようなケースです。

A メールサーバー(smtpサーバー)が入っているサーバー

B プログラムがおいてあるサーバーここで定義しているメールアドレスからメールを送りたい

ライブラリ

以下をpomに記述すればOKです。

ソース

参考リンク

JavaMailのセキュリティ認証方式について

JavaMail 1.5を使ってみる

問題点

ちなみにこの方法だとAのメールサーバーで定義したアドレスに送るのはできたんですが、XXXXX@gmail.comのような一般のサーバーには送れませんでしたね。

(認証がないせいか554.5.7.1エラーがでます。下記リンク参照)

SMTP応答コードのエラーメッセージと解説の参考

つまり同一ホストのメールアドレスにはおくれたんですが、一般のメールアドレスには送れませんでした。今回は超限定的な用法だったんでこれでいいんですが、これじゃ意味がないので近いうちに修正したいと思います。

-Java
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

文字列のENUM化

文字列をENUM化したいときの処理について リンク集です。 ENUMが文字だけのとき(key=>valueタイプでない時)、key=>valueタイプの時両方OKのようです。 enum 定 …

no image

型情報の取得・活用について

Javaで抽象度の高い実装を行うときに必要となる型情報の活用法について。 できるとできないとでプログラムの応用範囲が変わってくるのでメモっときます。 こちらのエントリーと合わせて読むといいと思います。 …

no image

Javaのarraycopy

最近あまりJava自体には触っていないですが、資格の勉強をコツコツとすすめていることもあり、新たな発見もあります。 8ヶ月ぐらいJava書いていますが、arraycopyというメソッドをはじめてしりま …

no image

サーブレットのスコープ

JavaEEではスコープアノテーションによって変数のスコープを使い分けられたのですが、サーブレットの場合はプログラムの中で使い分けます。 通常はページ、リクエストとセッション、アプリケーションぐらいで …

no image

フィールド以外のプロパティをエンティティに持たせる

JPAでは基本的に1テーブル、1クラスです。 このためプロパティは必然的にテーブルのフィールドに対応しています。 ただ、必ずしもプロパティだけでなく、臨時で持たせておきたい、プロパティがあったりします …

アーカイブ