簡體   English   中英

在java郵件會話中重寫收件人地址

[英]Rewrite recipient address in java mail session

該應用程序在Jboss服務器上運行,並使用JNDI獲取電子郵件會話。 我想要做的是發送電子郵件到不同的地址,而不是傳遞給電子郵件api。

應用程序正在傳遞收件人電子郵件地

PREFIX_email@example.com

我想在發送消息之前刪除PREFIX_。 優選的解決方案需要盡可能透明。

這種情況有沒有現成的解決方案? 什么是最好的處理方式?

如果您可以更改會話屬性以將電子郵件重定向到另一台服務器,則有三種選擇:

  1. 配置其他服務器將所有消息轉儲到單個INBOX中,然后編寫JavaMail程序以從INBOX獲取消息,修改電子郵件地址,並將修改后的消息發送到真實的SMTP服務器。

  2. 寫一個“假的”SMTP服務器接受該消息,重寫電子郵件地址,並將消息發送到真正的SMTP服務器。 您可以使用JavaMail來幫助解決這個問題。

  3. 在轉發郵件之前,將SMTP服務器配置為為您執行地址重寫。 sendmail可以肯定這樣做,我不了解別人。

如果您需要它用於開發目的,我可以為您推薦一個很好的解決方案來模擬javax.mail.Session

github項目javaMail擴展添加了允許以下內容的文件傳輸

  • 將郵件以text格式保存到文件而不是發送它們
  • 將郵件保存為mbox格式的文件,而不是發送它們
  • 添加日志信息而不是發送電子郵件

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM