SMTP サーバーで gerrit サーバーを構成した後、電子メールを送信できません。
コマンド「gsasl --smtp -a --connect=10.4.103.110:25 -p passwrod」で確認した後、SMTP サーバーで gerrit を構成しようとしていましたが、SMTP サーバーとの接続が正しいことを確認しました。
gerrit.config に設定したら、gerrit を再起動します。最初のアカウントの連絡先情報を webUI で変更しようとしたところ、「サーバー xxxx 拒否されたボディ」のような問題が発生しました。次に、ログを確認したところ、「SmtpEmailSender.java」ファイルの 204 行にあることがわかりました。コードは次のようになります。
w = new BufferedWriter(w);
for (Map.Entry<String, EmailHeader> h : hdrs.entrySet()) {
if (!h.getValue().isEmpty()) {
w.write(h.getKey());
w.write(": ");
h.getValue().write(w);
w.write("\r\n");
}
}
w.write("\r\n");
w.write(body);
w.flush();
w.close();
if (!client.completePendingCommand()) {
throw new EmailException("Server " + smtpHost + " rejected body");
}