在 Lotus Notes 中更改 "from" 字段
Change "from" field in LotusNotes
我正在使用 LotusNotes API 发送电子邮件,我需要做的是更改 "from" 字段值,请找到下面的代码:
public void sendEmail(String recipient, String subject, String bodyText,String from) throws NotesException {
Session dominoSession = NotesFactory.createSession(dominoServer, dominoUsername, dominoPassword);
Database dominoDb = dominoSession.getDatabase(dominoServer, dominoMailbox);
Document memo = dominoDb.createDocument();
memo.appendItemValue("Form", "Memo");
memo.appendItemValue("Importance", "1");
memo.appendItemValue("Subject", subject);
memo.appendItemValue("Body", bodyText);
memo.send(false, recipient);
dominoDb.recycle();
dominoSession.recycle();
}
你无法改变它。服务器总是将当前用户名放入 'From' 字段。您可以在 'Principal' 中设置不同的发件人,但邮件仍会显示实际发件人。
但有一个解决方法:不发送邮件,而是将邮件文档直接放入服务器上的 mail.box。然后就可以使用自己选择的'From'字段内容了。
我编辑了 Michele 的回答以澄清一些事情。如果你是初学者,我不建议你使用(未记录的)mail.box 方法......你需要知道你在那里做什么。
前段时间我用Lotusscript创建了一个邮件通知class,喜欢的可以看看。或许对你有帮助。
http://blog.texasswede.com/lotusscript-mail-notification-class/
但是,如果您不知道自己在做什么,请非常小心...:-)
我就是这样解决的,设置 "from" 属性:
public void sendEmail(final String recipient, final String subject, final String bodyText, final String from) throws NotesException {
final Session dominoSession = NotesFactory.createSession(dominoServer, dominoUsername, dominoPassword);
final Database dominoDb = dominoSession.getDatabase(dominoServer, dominoMailbox);
final Document mail = dominoDb.createDocument();
mail.appendItemValue("Form", "Memo");
mail.appendItemValue("Importance", "1");
mail.appendItemValue("Subject", subject);
mail.appendItemValue("Body", bodyText);
mail.replaceItemValue("From", from + "@NotesDomain");
mail.replaceItemValue("InetFrom", from);
mail.send(false, recipient);
dominoDb.recycle();
dominoSession.recycle();
}
我正在使用 LotusNotes API 发送电子邮件,我需要做的是更改 "from" 字段值,请找到下面的代码:
public void sendEmail(String recipient, String subject, String bodyText,String from) throws NotesException {
Session dominoSession = NotesFactory.createSession(dominoServer, dominoUsername, dominoPassword);
Database dominoDb = dominoSession.getDatabase(dominoServer, dominoMailbox);
Document memo = dominoDb.createDocument();
memo.appendItemValue("Form", "Memo");
memo.appendItemValue("Importance", "1");
memo.appendItemValue("Subject", subject);
memo.appendItemValue("Body", bodyText);
memo.send(false, recipient);
dominoDb.recycle();
dominoSession.recycle();
}
你无法改变它。服务器总是将当前用户名放入 'From' 字段。您可以在 'Principal' 中设置不同的发件人,但邮件仍会显示实际发件人。 但有一个解决方法:不发送邮件,而是将邮件文档直接放入服务器上的 mail.box。然后就可以使用自己选择的'From'字段内容了。
我编辑了 Michele 的回答以澄清一些事情。如果你是初学者,我不建议你使用(未记录的)mail.box 方法......你需要知道你在那里做什么。
前段时间我用Lotusscript创建了一个邮件通知class,喜欢的可以看看。或许对你有帮助。
http://blog.texasswede.com/lotusscript-mail-notification-class/
但是,如果您不知道自己在做什么,请非常小心...:-)
我就是这样解决的,设置 "from" 属性:
public void sendEmail(final String recipient, final String subject, final String bodyText, final String from) throws NotesException {
final Session dominoSession = NotesFactory.createSession(dominoServer, dominoUsername, dominoPassword);
final Database dominoDb = dominoSession.getDatabase(dominoServer, dominoMailbox);
final Document mail = dominoDb.createDocument();
mail.appendItemValue("Form", "Memo");
mail.appendItemValue("Importance", "1");
mail.appendItemValue("Subject", subject);
mail.appendItemValue("Body", bodyText);
mail.replaceItemValue("From", from + "@NotesDomain");
mail.replaceItemValue("InetFrom", from);
mail.send(false, recipient);
dominoDb.recycle();
dominoSession.recycle();
}