应用程序在Jboss服务器上运行,并使用JNDI获取电子邮件会话。 我想要做的是发送电子邮件到不同的地址,而不是传递给电子邮件api。
应用程序正在传递收件人电子邮件地址,如:
PREFIX_email@example.com
我想在发送消息之前删除PREFIX_。优选的解决方案需要尽可能透明。
这种情况有没有现成的解决方案? 什么是最好的处理方式?
答案 0 :(得分:1)
如果您可以更改会话属性以将电子邮件重定向到另一台服务器,则有三种选择:
配置其他服务器将所有邮件转储到单个INBOX中, 然后编写一个JavaMail程序来从INBOX中获取消息, 修改电子邮件地址,并将修改后的消息发送给 真正的SMTP服务器。
写一个“假的”SMTP服务器接受该消息,重写电子邮件地址, 并将邮件发送到真正的SMTP服务器。您可以使用JavaMail来帮助解决这个问题。
配置SMTP服务器为您执行地址重写 转发邮件之前。 sendmail可以肯定这样做,我不了解别人。
答案 1 :(得分:1)
如果您需要开发目的,我可以为您推荐一个很好的解决方案来模拟javax.mail.Session
。
github项目 javaMail extension 添加文件传输,允许:
text
格式将邮件保存到文件而不是发送mbox
格式将邮件保存到文件而不是发送