简体   繁体   中英

Setting the Bounce Address in Apache Commons Mail

Using the Apache Commons to send email there is the following code.

HtmlEmail email = new HtmlEmail();
email.setHostName(SMTP_HOST_NAME);
email.setSmtpPort(587);
email.setAuthenticator(new DefaultAuthenticator(SMTP_AUTH_USER, SMTP_AUTH_PWD));
email.setTLS(true);
email.setBounceAddress("aaa@abc.com");
email.setMsg("Hello");
email.setFrom("bbb@abc.edu");
email.addReplyTo("bbb@abc.edu");
email.addTo("i.do.not.exist@abc.gmail.com");
email.send();

But the bounce will not work. It sends the bounce to the party that authenticated the message, which in this example is SMTP_AUTH_USER. So How can I get it to bounce properly?

Did you check with a packet sniffer what is actually going over the wire? I wouldn't be surprised if the MSA on SMPT_HOST_NAME ignores and overrides your bounce address.

You could try using the SMTP-port to the MTA and quickly check if this makes a difference.

To set the bounce address you can make use of, setBounceAddress(emailAddressString) method before sending your email.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM