使用java中的notesFactory向lotus notes中的通用ID发送电子邮件
在一个项目中,通过LotusNotes从java应用程序发送电子邮件是一个需求 注意:domino服务器安装在客户机服务器上 目前我可以在本地机器上使用notesFactory发送电子邮件。使用notes.jar文件 它通过.nsf通过其密码访问用户 即通过密码创建安全连接。 通过调用 Session.getdatabase(null,“user.nsf”) 它工作得很好 但对于某些类型的电子邮件,客户端通过电子邮件共享通用id…(链接)。。。通过单击该链接,通用邮箱将在“活动用户”下打开。在单独的选项卡中。。。我们可以通过它发送电子邮件 但尚未共享其.nsf路径或id或密码 单击该链接即可直接打开 现在我想在notesfactory会话中访问该通用id 我试图打开那个id,然后运行我的代码…但它仍然通过活动用户本身发送电子邮件 客户端尚未准备好共享该用户的id和密码详细信息。而不是在本地计算机中生成id文件 他们有没有办法通过这个id发送电子邮件 如果有人想要我正在使用的代码,我将与大家分享 但对于某些类型的电子邮件,客户端共享了一个通用的 id…(链接)通过电子邮件。。。通过点击该链接,通用邮件 框将在“活动用户”下打开。在单独的选项卡中。。。通过它我们可以 发送电子邮件 这听起来不像是一个“共享id”,更像是一个邮件数据库,其ACL设置为允许一组用户访问。 当您从Notes中发送电子邮件时(无论是通过UI还是通过代码),实际登录的用户将被用作发件人。这是故意设计的,以防止用户欺骗发件人 有一种不受支持的方法可以通过将电子邮件直接放入mail.box来伪造发件人地址,但这只能由知道自己在做什么的人来完成 几年前我写了一个脚本库,旨在帮助发送电子邮件。它包括设置发件人地址的功能。你可以在网上找到,免费使用。但我不建议您在不了解代码的情况下使用它 以下是守则的相关部分:使用java中的notesFactory向lotus notes中的通用ID发送电子邮件,java,lotus-notes,Java,Lotus Notes,在一个项目中,通过LotusNotes从java应用程序发送电子邮件是一个需求 注意:domino服务器安装在客户机服务器上 目前我可以在本地机器上使用notesFactory发送电子邮件。使用notes.jar文件 它通过.nsf通过其密码访问用户 即通过密码创建安全连接。 通过调用 Session.getdatabase(null,“user.nsf”) 它工作得很好 但对于某些类型的电子邮件,客户端通过电子邮件共享通用id…(链接)。。。通过单击该链接,通用邮箱将在“活动用户”下打开。在单
Set mailbox = New NotesDatabase(mailservername,"mail.box")
If mailbox.Isopen = False Then
Print "mail.box on " & mailservername & " could not be opened"
Exit Sub
End If
Set me.maildoc = New NotesDocument(mailbox)
Call me.maildoc.ReplaceItemValue("Form","Memo")
Set me.body = New NotesRichTextItem(maildoc,"Body")
Call maildoc.ReplaceItemValue("Principal", me.p_principal)
' If principal is set, we want to fix so mail looks like
' it is coming from that address, need to set these fields
Call maildoc.ReplaceItemValue("From", me.p_principal)
Call maildoc.ReplaceItemValue("Sender", me.p_principal)
Call maildoc.ReplaceItemValue("ReplyTo", me.p_principal)
Call maildoc.ReplaceItemValue("SMTPOriginator", me.p_principal)
Call maildoc.ReplaceItemValue("PostedDate",Now())
If me.p_principal<>"" Then
Call maildoc.Save(True,False) ' Save in mail.box
Else
Call maildoc.Send(True) ' Send mail normally
End If
Set mailbox=newnotesdatabase(mailservername,“mail.box”)
如果mailbox.Isopen=False,则
无法打开打印“mailservername&”上的“mail.box”
出口接头
如果结束
Set me.maildoc=New NotesDocument(邮箱)
调用我.maildoc.ReplaceItemValue(“表单”、“备忘录”)
Set me.body=New NotesRichTextItem(maildoc,“body”)
调用maildoc.ReplaceItemValue(“主体”,me.p_主体)
'如果设置了principal,我们希望修复邮件
'它来自该地址,需要设置这些字段
调用maildoc.ReplaceItemValue(“From”,me.p_principal)
调用maildoc.ReplaceItemValue(“发件人”,me.p_主体)
调用maildoc.ReplaceItemValue(“ReplyTo”,me.p_principal)
调用maildoc.ReplaceItemValue(“SMTPOriginator”,me.p_委托人)
调用maildoc.ReplaceItemValue(“PostedDate”,Now())
如果我是p_校长,那么
调用maildoc.Save(True,False)'Save in mail.box
其他的
调用maildoc.Send(True)'正常发送邮件
如果结束
您可以使用主体字段设置发件人地址
但对于某些类型的电子邮件,客户端共享了一个通用的
id…(链接)通过电子邮件。。。通过点击该链接,通用邮件
框将在“活动用户”下打开。在单独的选项卡中。。。通过它我们可以
发送电子邮件
这听起来不像是一个“共享id”,更像是一个邮件数据库,其ACL设置为允许一组用户访问。
当您从Notes中发送电子邮件时(无论是通过UI还是通过代码),实际登录的用户将被用作发件人。这是故意设计的,以防止用户欺骗发件人
有一种不受支持的方法可以通过将电子邮件直接放入mail.box来伪造发件人地址,但这只能由知道自己在做什么的人来完成
几年前我写了一个脚本库,旨在帮助发送电子邮件。它包括设置发件人地址的功能。你可以在网上找到,免费使用。但我不建议您在不了解代码的情况下使用它
以下是守则的相关部分:
Set mailbox = New NotesDatabase(mailservername,"mail.box")
If mailbox.Isopen = False Then
Print "mail.box on " & mailservername & " could not be opened"
Exit Sub
End If
Set me.maildoc = New NotesDocument(mailbox)
Call me.maildoc.ReplaceItemValue("Form","Memo")
Set me.body = New NotesRichTextItem(maildoc,"Body")
Call maildoc.ReplaceItemValue("Principal", me.p_principal)
' If principal is set, we want to fix so mail looks like
' it is coming from that address, need to set these fields
Call maildoc.ReplaceItemValue("From", me.p_principal)
Call maildoc.ReplaceItemValue("Sender", me.p_principal)
Call maildoc.ReplaceItemValue("ReplyTo", me.p_principal)
Call maildoc.ReplaceItemValue("SMTPOriginator", me.p_principal)
Call maildoc.ReplaceItemValue("PostedDate",Now())
If me.p_principal<>"" Then
Call maildoc.Save(True,False) ' Save in mail.box
Else
Call maildoc.Send(True) ' Send mail normally
End If
Set mailbox=newnotesdatabase(mailservername,“mail.box”)
如果mailbox.Isopen=False,则
无法打开打印“mailservername&”上的“mail.box”
出口接头
如果结束
Set me.maildoc=New NotesDocument(邮箱)
调用我.maildoc.ReplaceItemValue(“表单”、“备忘录”)
Set me.body=New NotesRichTextItem(maildoc,“body”)
调用maildoc.ReplaceItemValue(“主体”,me.p_主体)
'如果设置了principal,我们希望修复邮件
'它来自该地址,需要设置这些字段
调用maildoc.ReplaceItemValue(“From”,me.p_principal)
调用maildoc.ReplaceItemValue(“发件人”,me.p_主体)
调用maildoc.ReplaceItemValue(“ReplyTo”,me.p_principal)
调用maildoc.ReplaceItemValue(“SMTPOriginator”,me.p_委托人)
调用maildoc.ReplaceItemValue(“PostedDate”,Now())
如果我是p_校长,那么
调用maildoc.Save(True,False)'Save in mail.box
其他的
调用maildoc.Send(True)'正常发送邮件
如果结束
您可以使用Principal字段设置发件人地址。Thanx它可以工作…添加replaceitemvalue对我有效…请告诉我如何将cc电子邮件id和附件添加到电子邮件正文???目前我可以使用embed对象发送附件,但无法将文本添加到该电子邮件文档中…@varsha-您真的应该开始一个新的电子邮件问题,因为这是不同的问题。你问题的答案在文档中,有些在我链接到的bog条目上