public class MimeMessageItemWriter extends java.lang.Object implements ItemWriter<javax.mail.internet.MimeMessage>
メールメッセージを送信できる単純な ItemWriter
。失敗した場合、どのメッセージが送信されたかについての保証はありませんが、失敗したメッセージはエラーハンドラーで取得できます。メールプロトコルはトランザクションに対応していないため、失敗の再スローを許可する(デフォルト)のではなく、可能であればここで障害に対処する必要があります。
バッチメソッド JavaMailSender.send(MimeMessage[])
を使用して、メッセージの実際の送信を JavaMailSender
に委譲します。これは通常、バッチ全体に対して単一のサーバー接続を使用します(実装によって異なります)。大量のメッセージ(アイテムライターへの繰り返しの呼び出し)の効率は、呼び出しと呼び出しの間にサーバーへの接続をキャッシュする特別な JavaMailSender
を使用することで改善される場合があります。
ステートレスなので、自動的に再起動できます。
コンストラクターと説明 |
---|
MimeMessageItemWriter() |
修飾子と型 | メソッドと説明 |
---|---|
void | afterPropertiesSet() 必須プロパティ(mailSender)を確認します。 |
void | setJavaMailSender(org.springframework.mail.javamail.JavaMailSender mailSender) write(List) でメッセージを送信するために使用される JavaMailSender 。 |
void | setMailErrorHandler(MailErrorHandler mailErrorHandler) 失敗したメッセージのハンドラー。 |
void | write(java.util.List<? extends javax.mail.internet.MimeMessage> items) 指定されたデータ要素を処理します。 |
public void setJavaMailSender(org.springframework.mail.javamail.JavaMailSender mailSender)
write(List)
でメッセージを送信するために使用される JavaMailSender
。mailSender
- MIME メッセージの送信作業を行うためのサービス public void setMailErrorHandler(MailErrorHandler mailErrorHandler)
DefaultMailErrorHandler
です。mailErrorHandler
- 設定するメールエラーハンドラー public void afterPropertiesSet() throws java.lang.IllegalStateException
java.lang.IllegalStateException
- 必須プロパティが設定されていない場合 InitializingBean.afterPropertiesSet()
public void write(java.util.List<? extends javax.mail.internet.MimeMessage> items) throws org.springframework.mail.MailException
ItemWriter
ItemWriter<javax.mail.internet.MimeMessage>
の write
items
- 送信するアイテム org.springframework.mail.MailException
ItemWriter.write(List)