電子メール配信の既知の問題

電子メール配信では、次の既知の問題が特定されています

JavaMailの問題は、1つの電子メールで多くの受信者が設定され、1つ以上の電子メール・アドレスが抑制されている場合に発生します

詳細: JavaMailライブラリを使用するクライアントで多くの受信者に電子メールを送信する場合、1つ以上の電子メール・アドレスが抑制リストにあると、Email DeliveryサービスはSMTPステータス・コード254を返します。このエラーは、Eメールが抑制された受信者アドレスで送信されたことを示しています。

JavaMailライブラリは、受信者のリストを受け入れ、sendPartialフラグを設定して有効な受信者のみ送信できます。ただし、このコードは、抑制対象の新しいサーバー・ステータス・コードを検出して削除することはできません。かわりに、送信全体を停止して例外を返します。アプリケーションは、この例外を捕捉し、抑制された受信者を受信者リストから削除して、このセットから有効な受信者にのみ送信する必要があります。つまり、アプリケーション・コードでcom.sun.mail.smtp.SMTPAddressFailedExceptionを捕捉し、ex.getAddress()を例外オブジェクトとともにコールして、削除するアドレスを取得し、それらを削除して再送信することができます。

回避策:抑制リストをアクティブにモニターし、抑制されたアドレスが電子メール送信リストに含まれないように、送信リストを更新します。詳細は、抑制リストの管理を参照してください。

JavaMailは廃止され、AngusMailという置換ライブラリに移動されました。このライブラリでは、開発者は2022年1月にリリースされたバージョン1.0.0でこの問題を修正しました。詳細は、このリリースのchangelogページを参照してください。バグ#7がこの問題の修正であることに注意してください。AngusMailは、JakartaMail仕様を実装し、JavaMailを置き換えるため、Java開発者にAngusMailを推奨します。

この問題への直接リンク: 1つの電子メールで複数の受信者が設定され、1つ以上の電子メール・アドレスが抑制されている場合に、JavaMailの問題が発生する

ルート以外のコンパートメントから抑制を追加しようとしたときにエラーが発生します

詳細: コンソールで、ルート以外のコンパートメントを選択してから「電子メールの抑制リスト」に移動し、抑制を追加しようとすると次のエラーが発生します:

Error: The required compartmentId ocid1.compartment.oc1..aaaaaaaacq3ztcbrxvgfb35zj6wztdpwlkmzfh4rnsq63sugge624qr5cdla must be the root compartment for suppressions

回避策: 承認済送信者ページに移動し、ルート・コンパートメントを選択してから「電子メールの抑制リスト」に戻ります。

この問題への直接リンク: ルート以外のコンパートメントから抑制を追加しようとしたときにエラーが発生します

古いフェデレーテッド・テナンシのSMTP資格証明にアクセスできません

詳細: フェデレーテッド・ユーザーは、System for Cross-domain Identity Management (SCIM)を使用しない古いテナンシを除き、電子メール配信でサポートされます。SCIMは、すべてのアイデンティティ情報アクセスの標準です。2018年12月より後のすべてのテナンシはSCIMです。

回避策: Oracle Cloud Infrastructureテナンシの管理者に問い合せて、電子メール配信サービスで使用する新規ユーザーをコンソールで作成します。コンソールに(フェデレーテッドではなく)直接ログインすると、ユーザー設定とSMTP資格証明にアクセスできるようになります。

この問題への直接リンク:古いフェデレーテッド・テナンシのSMTP資格証明にアクセスできません