5.11 SMTPMailService
SMTPMailServiceは、既存のメール・サーバー経由でSimple Mail Transfer Protocol (SMTP)を使用するメール送信をサポートします。インターネット上でメールを送信するメール・システムでは、ほとんどの場合、SMTPプロトコルを使用してサーバー間でメッセージを送信します。SMTPは、2つのメール・システムがどのようにやり取りする必要があるのか、またこれらのシステムが交換する制御メッセージの形式を指定してメールを転送します。
SMTPMailServiceを使用してメール・メッセージを生成する場合、アプリケーションでは受信者や送信者のアドレス、件名、本文、内容タイプ、文字エンコーディングなどの各種プロパティを指定できます。また、複数の添付ファイルを追加でき、これらの添付ファイルを1つのZipアーカイブ・ファイルにまとめて送信メッセージに添付するようにオプションで指定できます。このサービスでは、さまざまな暗号技術もサポートされています。
SMTPMailServiceは、Oracle JavaMail APIを使用します(http://www.oracle.com/technetwork/java/javamail/index.htmlを参照)。
関連サービス
SMTPMailServiceは他のサービスに依存しませんが、アプリケーションでメッセージも受信する場合、通常POP3MailServiceと一緒に使用されます。
SMTPMailServiceを使用すると、メール・メッセージを作成して別のサーバーに送信できます。ただし、SMTPプロトコルが受信側でメッセージを待ち行列に入れる機能には制限があるため、通常はメール・クライアントの2つのプロトコル(POP3またはIMAP)のいずれかと一緒に使用されます。メール・クライアントでJSMサービスを使用してメール・メッセージを取得する場合、POP3MailServiceを使用してすべてのメール・メッセージを取得できます。POP3MailServiceにより、サーバー・メールボックスでのメッセージの保存と、サーバーからのメッセージの定期的なダウンロードが容易になります。
技術仕様
通常、ドメイン情報(サーバー、ポート、メールドメイン)とFromアドレスは、省略値を使用しない場合、SMTPMailServiceプロパティ・ファイルで定義されます。この定義を行うことにより、プロパティの使用に関する一貫性が保証され、サービスを使用するたびにこの情報を宣言する必要がなくなります。
· SMTPは、通常、TCPポート25で機能するように構成されます。
· メールの暗号化をサポートするには、適切な受信者とセキュリティ・ファイルの詳細を使用してSMTPMailServiceプロパティを設定します。
recipient.certificate.<受信者>=<公開証明書ファイル>
· メールの署名をサポートするには、SMTPMailServerで必要なプライベート・キー・ストア・ファイルと公開証明書をSMTPMailServiceプロパティ・ファイルで特定する必要があります。以下の署名プロパティをメール受信者に対して指定する必要があります。
signer.keystore.<署名者>=<プライベート・キー・ストア・ファイル>
signer.certificate.<署名者>=<公開証明書ファイル>