クラス MimeMessageHelper

java.lang.ObjectSE
org.springframework.mail.javamail.MimeMessageHelper

public class MimeMessageHelper extends ObjectSE
MimeMessage を設定するためのヘルパークラス。

SimpleMailMessage の単純な setter をミラーリングし、値を基礎となる MimeMessage に直接適用します。このヘルパークラスのすべてのメソッドによって自動的に適用される、メッセージ全体の文字エンコードを定義できます。

HTML テキストコンテンツ、イメージなどのインライン要素、一般的なメール添付ファイルのサポートを提供します。メールアドレスに付随する個人名もサポートします。基になる MimeMessage オブジェクトに詳細設定を直接適用できることに注意してください!

通常、MimeMessagePreparator 実装または JavaMailSender クライアントコードで使用されます。MimeMessage ラッパーとしてインスタンス化するだけで、ラッパーで setter を呼び出し、基礎となる MimeMessage をメール送信に使用します。JavaMailSenderImpl によって内部的にも使用されます。

インラインイメージと PDF 添付ファイル付きの HTML メールのサンプルコード:

mailSender.send(new MimeMessagePreparator() {
  public void prepare(MimeMessage mimeMessage) throws MessagingException {
    MimeMessageHelper message = new MimeMessageHelper(mimeMessage, true, "UTF-8");
    message.setFrom("[email protected]");
    message.setTo("[email protected]");
    message.setSubject("my subject");
    message.setText("my text <img src='cid:myLogo'>", true);
    message.addInline("myLogo", new ClassPathResource("img/mylogo.gif"));
    message.addAttachment("myDocument.pdf", new ClassPathResource("doc/myDocument.pdf"));
  }
});
共通インターフェースを介して単純なメッセージまたは MIME メッセージとメッセージ入力コードをやり取りできるようにするために、このヘルパーの上で MimeMailMessageSimpleMailMessage と同様に共通の MailMessage インターフェースを実装する)の使用を検討してください。

マルチパートメールに関する警告 : HTML テキストのみを含み、インライン要素または添付ファイルを含まない単純な MIME メッセージは、HTML レンダリングが可能なメールクライアントで多かれ少なかれ機能します。ただし、インライン要素と添付ファイルは、依然としてメールクライアント間の主要な互換性の課題です。: インライン要素と添付ファイルを Microsoft Outlook、Lotus Notes、Mac Mail で機能させることは事実上不可能です。ニーズに合わせて特定のマルチパートモードを選択することを検討してください: MULTIPART_MODE 定数の javadoc には、より詳細な情報が含まれています。

導入:
19.01.2004
作成者:
Juergen Hoeller, Sam Brannen
関連事項:
  • フィールドのサマリー

    フィールド
    修飾子と型
    フィールド
    説明
    static final int
    型が "mixed" の単一ルートのマルチパート要素を持つマルチパートメッセージを示す定数。
    static final int
    ルートのマルチパート要素が「混合」され、さらに「関連」型のネストされたマルチパート要素を持つマルチパートメッセージを示す定数。
    static final int
    非マルチパートメッセージを示す定数。
    static final int
    「関連」型の単一ルートのマルチパート要素を持つマルチパートメッセージを示す定数。
  • コンストラクターの概要

    コンストラクター
    コンストラクター
    説明
    MimeMessageHelper(jakarta.mail.internet.MimeMessage mimeMessage)
    単純なテキストメッセージ(マルチパートコンテンツなし、つまり、メッセージを想定)を想定して、指定された MimeMessage の新しい MimeMessageHelper を作成します。
    MimeMessageHelper(jakarta.mail.internet.MimeMessage mimeMessage, boolean multipart)
    リクエストされた場合、マルチパートモード(代替テキスト、インライン要素、添付ファイルをサポート)で、指定された MimeMessage の新しい MimeMessageHelper を作成します。
    MimeMessageHelper(jakarta.mail.internet.MimeMessage mimeMessage, boolean multipart, @Nullable StringSE encoding)
    リクエストされた場合、マルチパートモード(代替テキスト、インライン要素、添付ファイルをサポート)で、指定された MimeMessage の新しい MimeMessageHelper を作成します。
    MimeMessageHelper(jakarta.mail.internet.MimeMessage mimeMessage, int multipartMode)
    リクエストされた場合、マルチパートモード(代替テキスト、インライン要素、添付ファイルをサポート)で、指定された MimeMessage の新しい MimeMessageHelper を作成します。
    MimeMessageHelper(jakarta.mail.internet.MimeMessage mimeMessage, int multipartMode, @Nullable StringSE encoding)
    リクエストされた場合、マルチパートモード(代替テキスト、インライン要素、添付ファイルをサポート)で、指定された MimeMessage の新しい MimeMessageHelper を作成します。
    MimeMessageHelper(jakarta.mail.internet.MimeMessage mimeMessage, @Nullable StringSE encoding)
    単純なテキストメッセージ(マルチパートコンテンツなし、つまり、メッセージを想定)を想定して、指定された MimeMessage の新しい MimeMessageHelper を作成します。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    void
    addAttachment(StringSE attachmentFilename, jakarta.activation.DataSource dataSource)
    jakarta.activation.DataSource からコンテンツを取得して、MimeMessage に添付ファイルを追加します。
    void
    addAttachment(StringSE attachmentFilename, FileSE file)
    java.io.File からコンテンツを取得して、MimeMessage に添付ファイルを追加します。
    void
    addAttachment(StringSE attachmentFilename, InputStreamSource inputStreamSource)
    org.springframework.core.io.InputStreamResource からコンテンツを取得して、MimeMessage に添付ファイルを追加します。
    void
    addAttachment(StringSE attachmentFilename, InputStreamSource inputStreamSource, StringSE contentType)
    org.springframework.core.io.InputStreamResource からコンテンツを取得して、MimeMessage に添付ファイルを追加します。
    void
    addBcc(jakarta.mail.internet.InternetAddress bcc)
    void
    void
    addBcc(StringSE bcc, StringSE personal)
    void
    addCc(jakarta.mail.internet.InternetAddress cc)
    void
    void
    addCc(StringSE cc, StringSE personal)
    void
    addInline(StringSE contentId, jakarta.activation.DataSource dataSource)
    MimeMessage にインライン要素を追加し、jakarta.activation.DataSource からコンテンツを取得します。
    void
    addInline(StringSE contentId, FileSE file)
    MimeMessage にインライン要素を追加し、java.io.File からコンテンツを取得します。
    void
    addInline(StringSE contentId, @Nullable StringSE inlineFilename, jakarta.activation.DataSource dataSource)
    MimeMessage にインライン要素を追加し、jakarta.activation.DataSource からコンテンツを取得し、提供された inlineFileName を要素に割り当てます。
    void
    addInline(StringSE contentId, StringSE inlineFilename, InputStreamSource inputStreamSource)
    MimeMessage にインライン要素を追加し、org.springframework.core.InputStreamResource からコンテンツを取得し、インライン fileName を明示的に指定します。
    void
    addInline(StringSE contentId, StringSE inlineFilename, InputStreamSource inputStreamSource, StringSE contentType)
    MimeMessage にインライン要素を追加し、org.springframework.core.InputStreamResource からコンテンツを取得し、インライン fileName とコンテンツ型を明示的に指定します。
    void
    addInline(StringSE contentId, InputStreamSource inputStreamSource, StringSE contentType)
    MimeMessage にインライン要素を追加し、org.springframework.core.InputStreamResource からコンテンツを取得し、コンテンツ型を明示的に指定します。
    void
    addInline(StringSE contentId, Resource resource)
    MimeMessage にインライン要素を追加し、org.springframework.core.io.Resource からコンテンツを取得します。
    void
    addTo(jakarta.mail.internet.InternetAddress to)
    void
    void
    addTo(StringSE to, StringSE personal)
    protected jakarta.activation.DataSource
    createDataSource(InputStreamSource inputStreamSource, StringSE contentType, StringSE name)
    指定された InputStreamSource のアクティベーションフレームワーク DataSource を作成します。
    protected void
    createMimeMultiparts(jakarta.mail.internet.MimeMessage mimeMessage, int multipartMode)
    使用する MimeMultipart オブジェクトを決定します。これは、一方で添付ファイルを保存し、他方でテキストおよびインライン要素を保存するために使用されます。
    getDefaultEncoding(jakarta.mail.internet.MimeMessage mimeMessage)
    指定された MimeMessage のデフォルトエンコーディングを決定します。
    protected jakarta.activation.FileTypeMap
    getDefaultFileTypeMap(jakarta.mail.internet.MimeMessage mimeMessage)
    指定された MimeMessage のデフォルトの Java Activation FileTypeMap を決定します。
    このメッセージに使用されている特定の文字エンコードがあれば、それを返します。
    jakarta.activation.FileTypeMap
    この MimeMessageHelper が使用する FileTypeMap を返します。
    final jakarta.mail.internet.MimeMessage
    基になる MimeMessage オブジェクトを返します。
    final jakarta.mail.internet.MimeMultipart
    基になる MIME "multipart/related" オブジェクトがある場合は、それを返します。
    final jakarta.mail.internet.MimeMultipart
    ルート MIME "multipart/mixed" オブジェクトがある場合は、それを返します。
    boolean
    このヘルパーの #addAttachment メソッドに渡された添付ファイル名をエンコードするかどうかを返します。
    final boolean
    このヘルパーがマルチパートモードかどうか、つまり
    boolean
    このヘルパーが渡されたすべてのアドレスを検証するかどうかを返します。
    void
    setBcc(jakarta.mail.internet.InternetAddress bcc)
    void
    setBcc(jakarta.mail.internet.InternetAddress[] bcc)
    void
    void
    void
    setCc(jakarta.mail.internet.InternetAddress cc)
    void
    setCc(jakarta.mail.internet.InternetAddress[] cc)
    void
    void
    void
    setEncodeFilenames(boolean encodeFilenames)
    このヘルパーの #addAttachment メソッドに渡される添付ファイル名をエンコードするかどうかを設定します。
    void
    setFileTypeMap(@Nullable jakarta.activation.FileTypeMap fileTypeMap)
    Java Activation フレームワーク FileTypeMap を設定して、メッセージに追加されるインラインコンテンツおよび添付ファイルのコンテンツ型を決定するために使用します。
    void
    setFrom(jakarta.mail.internet.InternetAddress from)
    void
    void
    setFrom(StringSE from, StringSE personal)
    protected final void
    setMimeMultiparts(@Nullable jakarta.mail.internet.MimeMultipart root, @Nullable jakarta.mail.internet.MimeMultipart main)
    この MimeMessageHelper で使用するために、指定された MimeMultipart オブジェクトを設定します。
    void
    setPriority(int priority)
    メッセージの優先度( "X-Priority" ヘッダー)を設定します。
    void
    setReplyTo(jakarta.mail.internet.InternetAddress replyTo)
    void
    void
    setReplyTo(StringSE replyTo, StringSE personal)
    void
    メッセージの送信日を設定します。
    void
    正しいエンコードを使用して、メッセージの件名を設定します。
    void
    指定されたテキストを非マルチパートモードのコンテンツとして直接設定するか、マルチパートモードのデフォルトのボディパーツとして設定します。
    void
    setText(StringSE text, boolean html)
    指定されたテキストを非マルチパートモードのコンテンツとして直接設定するか、マルチパートモードのデフォルトのボディパーツとして設定します。
    void
    setText(StringSE plainText, StringSE htmlText)
    与えられたプレーンテキストと HTML テキストを代替として設定し、両方のオプションをメールクライアントに提供します。
    void
    setTo(jakarta.mail.internet.InternetAddress to)
    void
    setTo(jakarta.mail.internet.InternetAddress[] to)
    void
    void
    void
    setValidateAddresses(boolean validateAddresses)
    このヘルパーに渡されるすべてのアドレスを検証するかどうかを設定します。
    protected void
    validateAddress(jakarta.mail.internet.InternetAddress address)
    指定されたメールアドレスを検証します。
    protected void
    validateAddresses(jakarta.mail.internet.InternetAddress[] addresses)
    指定されたすべてのメールアドレスを検証します。

    クラス ObjectSE から継承されたメソッド

    clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSE
  • フィールドの詳細

    • MULTIPART_MODE_NO

      public static final int MULTIPART_MODE_NO
      非マルチパートメッセージを示す定数。
      関連事項:
    • MULTIPART_MODE_MIXED

      public static final int MULTIPART_MODE_MIXED
      型が "mixed" の単一ルートのマルチパート要素を持つマルチパートメッセージを示す定数。テキスト、インライン要素、添付ファイルはすべて、そのルート要素に追加されます。

      これは Spring 1.0 のデフォルトの動作です。Outlook では正常に動作することがわかっています。ただし、他のメールクライアントは、インライン要素を添付ファイルとして誤って解釈したり、添付ファイルをインラインで表示したりする傾向があります。

      関連事項:
  • コンストラクターの詳細

    • MimeMessageHelper

      public MimeMessageHelper(jakarta.mail.internet.MimeMessage mimeMessage)
      単純なテキストメッセージ(マルチパートコンテンツ、つまり代替テキストやインライン要素や添付ファイルがない)を想定して、指定された MimeMessage の新しい MimeMessageHelper を作成します。

      メッセージの文字エンコードは、渡された場合、渡された MimeMessage オブジェクトから取得されます。そうでない場合、JavaMail のデフォルトのエンコードが使用されます。

      パラメーター:
      mimeMessage - 作業する MIME メッセージ
      関連事項:
    • MimeMessageHelper

      public MimeMessageHelper(jakarta.mail.internet.MimeMessage mimeMessage, @Nullable StringSE encoding)
      単純なテキストメッセージ(マルチパートコンテンツ、つまり代替テキストやインライン要素や添付ファイルがない)を想定して、指定された MimeMessage の新しい MimeMessageHelper を作成します。
      パラメーター:
      mimeMessage - 作業する MIME メッセージ
      encoding - メッセージに使用する文字エンコード
      関連事項:
    • MimeMessageHelper

      public MimeMessageHelper(jakarta.mail.internet.MimeMessage mimeMessage, boolean multipart) throws jakarta.mail.MessagingException
      リクエストされた場合、マルチパートモード(代替テキスト、インライン要素、添付ファイルをサポート)で、指定された MimeMessage の新しい MimeMessageHelper を作成します。

      MULTIPART_MODE_MIXED_RELATED 以外の特定のマルチパートモードを選択するには、multipartMode 引数を受け取る MimeMessageHelper コンストラクターの使用を検討してください。

      メッセージの文字エンコードは、渡された場合、渡された MimeMessage オブジェクトから取得されます。そうでない場合、JavaMail のデフォルトのエンコードが使用されます。

      パラメーター:
      mimeMessage - 作業する MIME メッセージ
      multipart - 代替テキスト、インライン要素、添付ファイルをサポートするマルチパートメッセージを作成するかどうか (MULTIPART_MODE_MIXED_RELATED に対応)
      例外:
      jakarta.mail.MessagingException - マルチパート作成が失敗した場合
      関連事項:
    • MimeMessageHelper

      public MimeMessageHelper(jakarta.mail.internet.MimeMessage mimeMessage, boolean multipart, @Nullable StringSE encoding) throws jakarta.mail.MessagingException
      リクエストされた場合、マルチパートモード(代替テキスト、インライン要素、添付ファイルをサポート)で、指定された MimeMessage の新しい MimeMessageHelper を作成します。

      MULTIPART_MODE_MIXED_RELATED 以外の特定のマルチパートモードを選択するには、multipartMode 引数を受け取る MimeMessageHelper コンストラクターの使用を検討してください。

      パラメーター:
      mimeMessage - 作業する MIME メッセージ
      multipart - 代替テキスト、インライン要素、添付ファイルをサポートするマルチパートメッセージを作成するかどうか (MULTIPART_MODE_MIXED_RELATED に対応)
      encoding - メッセージに使用する文字エンコード
      例外:
      jakarta.mail.MessagingException - マルチパート作成が失敗した場合
      関連事項:
    • MimeMessageHelper

      public MimeMessageHelper(jakarta.mail.internet.MimeMessage mimeMessage, int multipartMode) throws jakarta.mail.MessagingException
      リクエストされた場合、マルチパートモード(代替テキスト、インライン要素、添付ファイルをサポート)で、指定された MimeMessage の新しい MimeMessageHelper を作成します。

      メッセージの文字エンコードは、渡された場合、渡された MimeMessage オブジェクトから取得されます。そうでない場合、JavaMail のデフォルトのエンコードが使用されます。

      パラメーター:
      mimeMessage - 作業する MIME メッセージ
      multipartMode - 作成するマルチパートメッセージの種類 (MIXED、RELATED、MIXED_RELATED、NO)
      例外:
      jakarta.mail.MessagingException - マルチパート作成が失敗した場合
      関連事項:
    • MimeMessageHelper

      public MimeMessageHelper(jakarta.mail.internet.MimeMessage mimeMessage, int multipartMode, @Nullable StringSE encoding) throws jakarta.mail.MessagingException
      リクエストされた場合、マルチパートモード(代替テキスト、インライン要素、添付ファイルをサポート)で、指定された MimeMessage の新しい MimeMessageHelper を作成します。
      パラメーター:
      mimeMessage - 作業する MIME メッセージ
      multipartMode - 作成するマルチパートメッセージの種類 (MIXED、RELATED、MIXED_RELATED、NO)
      encoding - メッセージに使用する文字エンコード
      例外:
      jakarta.mail.MessagingException - マルチパート作成が失敗した場合
      関連事項:
  • メソッドの詳細

    • getMimeMessage

      public final jakarta.mail.internet.MimeMessage getMimeMessage()
      基になる MimeMessage オブジェクトを返します。
    • createMimeMultiparts

      protected void createMimeMultiparts(jakarta.mail.internet.MimeMessage mimeMessage, int multipartMode) throws jakarta.mail.MessagingException
      使用する MimeMultipart オブジェクトを決定します。これは、一方で添付ファイルを保存し、他方でテキストおよびインライン要素を保存するために使用されます。

      テキストおよびインライン要素は、ルート要素自体(MULTIPART_MODE_MIXED、MULTIPART_MODE_RELATED)に格納するか、ルート要素ではなくネストした要素に直接格納する(MULTIPART_MODE_MIXED_RELATED)ことができます。

      デフォルトでは、ルート MimeMultipart 要素の型は "mixed" (MULTIPART_MODE_MIXED)または "related" (MULTIPART_MODE_RELATED)です。メインのマルチパート要素は、「関連」型のネストされた要素(MULTIPART_MODE_MIXED_RELATED)として追加されるか、ルート要素自体(MULTIPART_MODE_MIXED、MULTIPART_MODE_RELATED)と同一になります。

      パラメーター:
      mimeMessage - ルート MimeMultipart オブジェクトを追加する MimeMessage オブジェクト
      multipartMode - コンストラクターに渡されるマルチパートモード (MIXED、RELATED、MIXED_RELATED、NO)
      例外:
      jakarta.mail.MessagingException - マルチパート作成が失敗した場合
      関連事項:
    • setMimeMultiparts

      protected final void setMimeMultiparts(@Nullable jakarta.mail.internet.MimeMultipart root, @Nullable jakarta.mail.internet.MimeMultipart main)
      この MimeMessageHelper で使用するために、指定された MimeMultipart オブジェクトを設定します。
      パラメーター:
      root - 添付ファイルが追加されるルート MimeMultipart オブジェクト。または null は、マルチパートがまったくないことを示します
      main - メインの MimeMultipart オブジェクト。テキストとインライン要素が追加されます (ルートマルチパートオブジェクト、またはルートマルチパート要素にネストされた要素と同じにすることができます)
    • isMultipart

      public final boolean isMultipart()
      このヘルパーがマルチパートモードかどうか、つまりマルチパートメッセージを保持しているかどうかを返します。
      関連事項:
    • getRootMimeMultipart

      public final jakarta.mail.internet.MimeMultipart getRootMimeMultipart() throws IllegalStateExceptionSE
      ルート MIME "multipart/mixed" オブジェクトがある場合は、それを返します。手動で添付ファイルを追加するために使用できます。

      これは、マルチパートメールの場合、MimeMessage の直接コンテンツになります。

      例外:
      IllegalStateExceptionSE - このヘルパーがマルチパートモードでない場合
      関連事項:
    • getMimeMultipart

      public final jakarta.mail.internet.MimeMultipart getMimeMultipart() throws IllegalStateExceptionSE
      基になる MIME "multipart/related" オブジェクトがある場合は、それを返します。ボディパーツ、インライン要素などを手動で追加するために使用できます。

      これは、マルチパートメールの場合、ルート MimeMultipart 内にネストされます。

      例外:
      IllegalStateExceptionSE - このヘルパーがマルチパートモードでない場合
      関連事項:
    • getDefaultEncoding

      protected @Nullable StringSE getDefaultEncoding(jakarta.mail.internet.MimeMessage mimeMessage)
      指定された MimeMessage のデフォルトエンコーディングを決定します。
      パラメーター:
      mimeMessage - 渡された MimeMessage
      戻り値:
      MimeMessage に関連付けられたデフォルトのエンコーディング。見つからない場合は null 
    • getEncoding

      public @Nullable StringSE getEncoding()
      このメッセージに使用されている特定の文字エンコードがあれば、それを返します。
    • getDefaultFileTypeMap

      protected jakarta.activation.FileTypeMap getDefaultFileTypeMap(jakarta.mail.internet.MimeMessage mimeMessage)
      指定された MimeMessage のデフォルトの Java Activation FileTypeMap を決定します。
      パラメーター:
      mimeMessage - 渡された MimeMessage
      戻り値:
      MimeMessage に関連付けられたデフォルト FileTypeMap、またはメッセージに何も見つからない場合はデフォルト ConfigurableMimeFileTypeMap
      関連事項:
    • setFileTypeMap

      public void setFileTypeMap(@Nullable jakarta.activation.FileTypeMap fileTypeMap)
      Java Activation フレームワーク FileTypeMap を設定して、メッセージに追加されるインラインコンテンツおよび添付ファイルのコンテンツ型を決定するために使用します。

      デフォルトは、基礎となる MimeMessage が持っている FileTypeMap (存在する場合)、またはアクティベーションフレームワークのデフォルトの FileTypeMap インスタンス(それ以外の場合)です。

      関連事項:
    • getFileTypeMap

      public jakarta.activation.FileTypeMap getFileTypeMap()
      この MimeMessageHelper が使用する FileTypeMap を返します。
      関連事項:
    • setEncodeFilenames

      public void setEncodeFilenames(boolean encodeFilenames)
      このヘルパーの #addAttachment メソッドに渡される添付ファイル名をエンコードするかどうかを設定します。

      標準の MIME 動作のデフォルトは false です。古いメールクライアントとの互換性のために、これを true に変えてください。関連する注記については、JavaMail の mail.mime.encodefilename システムプロパティを確認してください。

      注意 : JavaMail の標準 mail.mime.encodefilename システムプロパティを優先して、デフォルトが 5.3 の false に変更されました。

      導入:
      5.2.9
      関連事項:
    • isEncodeFilenames

      public boolean isEncodeFilenames()
      このヘルパーの #addAttachment メソッドに渡された添付ファイル名をエンコードするかどうかを返します。
      導入:
      5.2.9
      関連事項:
    • setValidateAddresses

      public void setValidateAddresses(boolean validateAddresses)
      このヘルパーに渡されるすべてのアドレスを検証するかどうかを設定します。

      デフォルトは false です。

      関連事項:
    • isValidateAddresses

      public boolean isValidateAddresses()
      このヘルパーが渡されたすべてのアドレスを検証するかどうかを返します。
      関連事項:
    • validateAddress

      protected void validateAddress(jakarta.mail.internet.InternetAddress address) throws jakarta.mail.internet.AddressException
      指定されたメールアドレスを検証します。MimeMessageHelper のすべてのアドレス setter および加算器によって呼び出されます。

      ヘルパーインスタンスのアドレス検証がアクティブ化されている場合、デフォルトの実装では InternetAddress.validate() が呼び出されます。

      パラメーター:
      address - 検証するアドレス
      例外:
      jakarta.mail.internet.AddressException - 検証に失敗した場合
      関連事項:
    • validateAddresses

      protected void validateAddresses(jakarta.mail.internet.InternetAddress[] addresses) throws jakarta.mail.internet.AddressException
      指定されたすべてのメールアドレスを検証します。

      デフォルトの実装では、アドレスごとに validateAddress(InternetAddress) に委譲するだけです。

      パラメーター:
      addresses - 検証するアドレス
      例外:
      jakarta.mail.internet.AddressException - 検証に失敗した場合
      関連事項:
    • setFrom

      public void setFrom(jakarta.mail.internet.InternetAddress from) throws jakarta.mail.MessagingException
      例外:
      jakarta.mail.MessagingException
    • setFrom

      public void setFrom(StringSE from) throws jakarta.mail.MessagingException
      例外:
      jakarta.mail.MessagingException
    • setFrom

      public void setFrom(StringSE from, StringSE personal) throws jakarta.mail.MessagingException, UnsupportedEncodingExceptionSE
      例外:
      jakarta.mail.MessagingException
      UnsupportedEncodingExceptionSE
    • setReplyTo

      public void setReplyTo(jakarta.mail.internet.InternetAddress replyTo) throws jakarta.mail.MessagingException
      例外:
      jakarta.mail.MessagingException
    • setReplyTo

      public void setReplyTo(StringSE replyTo) throws jakarta.mail.MessagingException
      例外:
      jakarta.mail.MessagingException
    • setReplyTo

      public void setReplyTo(StringSE replyTo, StringSE personal) throws jakarta.mail.MessagingException, UnsupportedEncodingExceptionSE
      例外:
      jakarta.mail.MessagingException
      UnsupportedEncodingExceptionSE
    • setTo

      public void setTo(jakarta.mail.internet.InternetAddress to) throws jakarta.mail.MessagingException
      例外:
      jakarta.mail.MessagingException
    • setTo

      public void setTo(jakarta.mail.internet.InternetAddress[] to) throws jakarta.mail.MessagingException
      例外:
      jakarta.mail.MessagingException
    • setTo

      public void setTo(StringSE to) throws jakarta.mail.MessagingException
      例外:
      jakarta.mail.MessagingException
    • setTo

      public void setTo(StringSE[] to) throws jakarta.mail.MessagingException
      例外:
      jakarta.mail.MessagingException
    • addTo

      public void addTo(jakarta.mail.internet.InternetAddress to) throws jakarta.mail.MessagingException
      例外:
      jakarta.mail.MessagingException
    • addTo

      public void addTo(StringSE to) throws jakarta.mail.MessagingException
      例外:
      jakarta.mail.MessagingException
    • addTo

      public void addTo(StringSE to, StringSE personal) throws jakarta.mail.MessagingException, UnsupportedEncodingExceptionSE
      例外:
      jakarta.mail.MessagingException
      UnsupportedEncodingExceptionSE
    • setCc

      public void setCc(jakarta.mail.internet.InternetAddress cc) throws jakarta.mail.MessagingException
      例外:
      jakarta.mail.MessagingException
    • setCc

      public void setCc(jakarta.mail.internet.InternetAddress[] cc) throws jakarta.mail.MessagingException
      例外:
      jakarta.mail.MessagingException
    • setCc

      public void setCc(StringSE cc) throws jakarta.mail.MessagingException
      例外:
      jakarta.mail.MessagingException
    • setCc

      public void setCc(StringSE[] cc) throws jakarta.mail.MessagingException
      例外:
      jakarta.mail.MessagingException
    • addCc

      public void addCc(jakarta.mail.internet.InternetAddress cc) throws jakarta.mail.MessagingException
      例外:
      jakarta.mail.MessagingException
    • addCc

      public void addCc(StringSE cc) throws jakarta.mail.MessagingException
      例外:
      jakarta.mail.MessagingException
    • addCc

      public void addCc(StringSE cc, StringSE personal) throws jakarta.mail.MessagingException, UnsupportedEncodingExceptionSE
      例外:
      jakarta.mail.MessagingException
      UnsupportedEncodingExceptionSE
    • setBcc

      public void setBcc(jakarta.mail.internet.InternetAddress bcc) throws jakarta.mail.MessagingException
      例外:
      jakarta.mail.MessagingException
    • setBcc

      public void setBcc(jakarta.mail.internet.InternetAddress[] bcc) throws jakarta.mail.MessagingException
      例外:
      jakarta.mail.MessagingException
    • setBcc

      public void setBcc(StringSE bcc) throws jakarta.mail.MessagingException
      例外:
      jakarta.mail.MessagingException
    • setBcc

      public void setBcc(StringSE[] bcc) throws jakarta.mail.MessagingException
      例外:
      jakarta.mail.MessagingException
    • addBcc

      public void addBcc(jakarta.mail.internet.InternetAddress bcc) throws jakarta.mail.MessagingException
      例外:
      jakarta.mail.MessagingException
    • addBcc

      public void addBcc(StringSE bcc) throws jakarta.mail.MessagingException
      例外:
      jakarta.mail.MessagingException
    • addBcc

      public void addBcc(StringSE bcc, StringSE personal) throws jakarta.mail.MessagingException, UnsupportedEncodingExceptionSE
      例外:
      jakarta.mail.MessagingException
      UnsupportedEncodingExceptionSE
    • setPriority

      public void setPriority(int priority) throws jakarta.mail.MessagingException
      メッセージの優先度( "X-Priority" ヘッダー)を設定します。
      パラメーター:
      priority - 優先度値。通常、1(最高)から 5 の間 (下位)
      例外:
      jakarta.mail.MessagingException - エラーの場合
    • setSentDate

      public void setSentDate(DateSE sentDate) throws jakarta.mail.MessagingException
      メッセージの送信日を設定します。
      パラメーター:
      sentDate - 設定する日付 (非 null)
      例外:
      jakarta.mail.MessagingException - エラーの場合
    • setSubject

      public void setSubject(StringSE subject) throws jakarta.mail.MessagingException
      正しいエンコードを使用して、メッセージの件名を設定します。
      パラメーター:
      subject - 件名テキスト
      例外:
      jakarta.mail.MessagingException - エラーの場合
    • setText

      public void setText(StringSE text) throws jakarta.mail.MessagingException
      指定されたテキストを、非マルチパートモードのコンテンツとして、またはマルチパートモードのデフォルトの本文パーツとして直接設定します。常にデフォルトのコンテンツ型 "text/plain" を適用します。

      setText後に addInline(String, DataSource) を呼び出します。そうしないと、メールリーダーがインライン参照を正しく解決できない可能性があります。

      パラメーター:
      text - メッセージのテキスト
      例外:
      jakarta.mail.MessagingException - エラーの場合
    • setText

      public void setText(StringSE text, boolean html) throws jakarta.mail.MessagingException
      指定されたテキストを非マルチパートモードのコンテンツとして直接設定するか、マルチパートモードのデフォルトのボディパーツとして設定します。"html" フラグは、適用するコンテンツ型を決定します。

      setText後に addInline(String, DataSource) を呼び出します。そうしないと、メールリーダーがインライン参照を正しく解決できない可能性があります。

      パラメーター:
      text - メッセージのテキスト
      html - デフォルトのコンテンツ型("text/plain")を使用して、HTML メールにコンテンツ型 "text/html" を適用するかどうか
      例外:
      jakarta.mail.MessagingException - エラーの場合
    • setText

      public void setText(StringSE plainText, StringSE htmlText) throws jakarta.mail.MessagingException
      与えられたプレーンテキストと HTML テキストを代替として設定し、両方のオプションをメールクライアントに提供します。マルチパートモードが必要です。

      setText後に addInline(String, DataSource) を呼び出します。そうしないと、メールリーダーがインライン参照を正しく解決できない可能性があります。

      パラメーター:
      plainText - メッセージのプレーンテキスト
      htmlText - メッセージの HTML テキスト
      例外:
      jakarta.mail.MessagingException - エラーの場合
    • addInline

      public void addInline(StringSE contentId, jakarta.activation.DataSource dataSource) throws jakarta.mail.MessagingException
      MimeMessage にインライン要素を追加し、jakarta.activation.DataSource からコンテンツを取得します。

      JavaMail は getInputStream() を複数回呼び出すため、DataSource 実装によって返される InputStream は各呼び出し新しいものである必要があることに注意してください。

      :setText(String)後に  addInline を呼び出します。そうしないと、メールリーダーがインライン参照を正しく解決できない可能性があります。

      パラメーター:
      contentId - 使用するコンテンツ ID。本文部分の "Content-ID" ヘッダーとして、山括弧 括弧 で囲まれます。たとえば、"myId" → "<myId>" です。HTML ソースでは、src="cid:myId" 式を使用して参照できます。
      dataSource - コンテンツを取得する jakarta.activation.DataSource、InputStream およびコンテンツ型を決定
      例外:
      jakarta.mail.MessagingException - エラーの場合
      関連事項:
    • addInline

      public void addInline(StringSE contentId, @Nullable StringSE inlineFilename, jakarta.activation.DataSource dataSource) throws jakarta.mail.MessagingException
      MimeMessage にインライン要素を追加し、jakarta.activation.DataSource からコンテンツを取得し、提供された inlineFileName を要素に割り当てます。

      JavaMail は getInputStream() を複数回呼び出すため、DataSource 実装によって返される InputStream は各呼び出し新しいものである必要があることに注意してください。

      :setText(String)後に  addInline を呼び出します。そうしないと、メールリーダーがインライン参照を正しく解決できない可能性があります。

      パラメーター:
      contentId - 使用するコンテンツ ID。本文部分の "Content-ID" ヘッダーとして、山括弧 括弧 で囲まれます。たとえば、"myId" → "<myId>" です。HTML ソースでは、src="cid:myId" 式を使用して参照できます。
      inlineFilename - インライン要素の部分に使用する fileName
      dataSource - コンテンツを取得する jakarta.activation.DataSource、InputStream およびコンテンツ型を決定
      例外:
      jakarta.mail.MessagingException - エラーの場合
      導入:
      6.2
      関連事項:
    • addInline

      public void addInline(StringSE contentId, FileSE file) throws jakarta.mail.MessagingException
      MimeMessage にインライン要素を追加し、java.io.File からコンテンツを取得します。

      コンテンツ型は、指定されたコンテンツファイルの名前によって決定されます。任意のファイル名( ".tmp" などで終わる可能性がある)を持つ一時ファイルにはこれを使用しないでください!

      :setText(String)後に  addInline を呼び出します。そうしないと、メールリーダーがインライン参照を正しく解決できない可能性があります。

      パラメーター:
      contentId - 使用するコンテンツ ID。本文部分の "Content-ID" ヘッダーとして、山括弧 括弧 で囲まれます。たとえば、"myId" → "<myId>" です。HTML ソースでは、src="cid:myId" 式を使用して参照できます。
      file - コンテンツを取得する File リソース
      例外:
      jakarta.mail.MessagingException - エラーの場合
      関連事項:
    • addInline

      public void addInline(StringSE contentId, Resource resource) throws jakarta.mail.MessagingException
      MimeMessage にインライン要素を追加し、org.springframework.core.io.Resource からコンテンツを取得します。

      コンテンツ型は、指定されたコンテンツファイルの名前によって決定されます。任意のファイル名( ".tmp" などで終わる可能性がある)を持つ一時ファイルにはこれを使用しないでください!

      JavaMail は getInputStream() を複数回呼び出すため、リソース実装によって返される InputStream は各呼び出し新しいものである必要があることに注意してください。

      :setText(String)後に  addInline を呼び出します。そうしないと、メールリーダーがインライン参照を正しく解決できない可能性があります。

      パラメーター:
      contentId - 使用するコンテンツ ID。本文部分の "Content-ID" ヘッダーとして、山括弧 括弧 で囲まれます。たとえば、"myId" → "<myId>" です。HTML ソースでは、src="cid:myId" 式を使用して参照できます。
      resource - コンテンツを取得するリソース
      例外:
      jakarta.mail.MessagingException - エラーの場合
      関連事項:
    • addInline

      public void addInline(StringSE contentId, InputStreamSource inputStreamSource, StringSE contentType) throws jakarta.mail.MessagingException
      MimeMessage にインライン要素を追加し、org.springframework.core.InputStreamResource からコンテンツを取得し、コンテンツ型を明示的に指定します。

      Java アクティベーションフレームワークの FileTypeMap(このヘルパーが保持するものなど)を介して、任意のファイル名のコンテンツ型を判別できます。

      JavaMail は getInputStream() を複数回呼び出すため、InputStreamSource 実装によって返される InputStream は各呼び出し新しいものである必要があることに注意してください。

      setText後に  addInline を呼び出します。そうしないと、メールリーダーがインライン参照を正しく解決できない可能性があります。

      パラメーター:
      contentId - 使用するコンテンツ ID。本文部分の "Content-ID" ヘッダーとして、山括弧 括弧 で囲まれます。たとえば、"myId" → "<myId>" です。HTML ソースでは、src="cid:myId" 式を使用して参照できます。
      inputStreamSource - コンテンツを取得するリソース
      contentType - 要素に使用するコンテンツ型
      例外:
      jakarta.mail.MessagingException - エラーの場合
      関連事項:
    • addInline

      public void addInline(StringSE contentId, StringSE inlineFilename, InputStreamSource inputStreamSource) throws jakarta.mail.MessagingException
      MimeMessage にインライン要素を追加し、org.springframework.core.InputStreamResource からコンテンツを取得し、インライン fileName を明示的に指定します。

      コンテンツ型は、指定されたコンテンツファイルの名前によって決定されます。任意のファイル名( ".tmp" などで終わる可能性がある)を持つ一時ファイルにはこれを使用しないでください!

      JavaMail は getInputStream() を複数回呼び出すため、InputStreamSource 実装によって返される InputStream は各呼び出し新しいものである必要があることに注意してください。

      setText後に  addInline を呼び出します。そうしないと、メールリーダーがインライン参照を正しく解決できない可能性があります。

      パラメーター:
      contentId - 使用するコンテンツ ID。本文部分の "Content-ID" ヘッダーとして、山括弧 括弧 で囲まれます。たとえば、"myId" → "<myId>" です。HTML ソースでは、src="cid:myId" 式を使用して参照できます。
      inlineFilename - インライン要素に使用するファイル名
      inputStreamSource - コンテンツを取得するリソース
      例外:
      jakarta.mail.MessagingException - エラーの場合
      導入:
      6.2
      関連事項:
    • addInline

      public void addInline(StringSE contentId, StringSE inlineFilename, InputStreamSource inputStreamSource, StringSE contentType) throws jakarta.mail.MessagingException
      MimeMessage にインライン要素を追加し、org.springframework.core.InputStreamResource からコンテンツを取得し、インライン fileName とコンテンツ型を明示的に指定します。

      Java アクティベーションフレームワークの FileTypeMap(このヘルパーが保持するものなど)を介して、任意のファイル名のコンテンツ型を判別できます。

      JavaMail は getInputStream() を複数回呼び出すため、InputStreamSource 実装によって返される InputStream は各呼び出し新しいものである必要があることに注意してください。

      setText後に  addInline を呼び出します。そうしないと、メールリーダーがインライン参照を正しく解決できない可能性があります。

      パラメーター:
      contentId - 使用するコンテンツ ID。本文部分の "Content-ID" ヘッダーとして、山括弧 括弧 で囲まれます。たとえば、"myId" → "<myId>" です。HTML ソースでは、src="cid:myId" 式を使用して参照できます。
      inlineFilename - インライン要素の部分に使用する fileName
      inputStreamSource - コンテンツを取得するリソース
      contentType - 要素に使用するコンテンツ型
      例外:
      jakarta.mail.MessagingException - エラーの場合
      導入:
      6.2
      関連事項:
    • addAttachment

      public void addAttachment(StringSE attachmentFilename, jakarta.activation.DataSource dataSource) throws jakarta.mail.MessagingException
      jakarta.activation.DataSource からコンテンツを取得して、MimeMessage に添付ファイルを追加します。

      JavaMail は getInputStream() を複数回呼び出すため、DataSource 実装によって返される InputStream は各呼び出し新しいものである必要があることに注意してください。

      パラメーター:
      attachmentFilename - メールに表示される添付ファイルの名前 (コンテンツ型はこれによって決定されます)
      dataSource - コンテンツを取得する jakarta.activation.DataSource、InputStream およびコンテンツ型を決定
      例外:
      jakarta.mail.MessagingException - エラーの場合
      関連事項:
    • addAttachment

      public void addAttachment(StringSE attachmentFilename, FileSE file) throws jakarta.mail.MessagingException
      java.io.File からコンテンツを取得して、MimeMessage に添付ファイルを追加します。

      コンテンツ型は、指定されたコンテンツファイルの名前によって決定されます。任意のファイル名( ".tmp" などで終わる可能性がある)を持つ一時ファイルにはこれを使用しないでください!

      パラメーター:
      attachmentFilename - メールに表示される添付ファイルの名前
      file - コンテンツを取得する File リソース
      例外:
      jakarta.mail.MessagingException - エラーの場合
      関連事項:
    • addAttachment

      public void addAttachment(StringSE attachmentFilename, InputStreamSource inputStreamSource) throws jakarta.mail.MessagingException
      org.springframework.core.io.InputStreamResource からコンテンツを取得して、MimeMessage に添付ファイルを追加します。

      コンテンツ型は、添付ファイルのファイル名によって決まります。任意のファイル名の一時ファイルを含め、どのコンテンツソースでも問題ありません。

      JavaMail は getInputStream() を複数回呼び出すため、InputStreamSource 実装によって返される InputStream は各呼び出し新しいものである必要があることに注意してください。

      パラメーター:
      attachmentFilename - メールに表示される添付ファイルの名前
      inputStreamSource - コンテンツを取得するリソース (Spring のすべての Resource 実装をここに渡すことができます)
      例外:
      jakarta.mail.MessagingException - エラーの場合
      関連事項:
    • addAttachment

      public void addAttachment(StringSE attachmentFilename, InputStreamSource inputStreamSource, StringSE contentType) throws jakarta.mail.MessagingException
      org.springframework.core.io.InputStreamResource からコンテンツを取得して、MimeMessage に添付ファイルを追加します。

      JavaMail は getInputStream() を複数回呼び出すため、InputStreamSource 実装によって返される InputStream は各呼び出し新しいものである必要があることに注意してください。

      パラメーター:
      attachmentFilename - メールに表示される添付ファイルの名前
      inputStreamSource - コンテンツを取得するリソース (Spring のすべての Resource 実装をここに渡すことができます)
      contentType - 要素に使用するコンテンツ型
      例外:
      jakarta.mail.MessagingException - エラーの場合
      関連事項:
    • createDataSource

      protected jakarta.activation.DataSource createDataSource(InputStreamSource inputStreamSource, StringSE contentType, StringSE name)
      指定された InputStreamSource のアクティベーションフレームワーク DataSource を作成します。
      パラメーター:
      inputStreamSource - InputStreamSource (通常は Spring リソース)
      contentType - コンテンツ型
      name - DataSource の名前
      戻り値:
      アクティベーションフレームワーク DataSource