[数据集成] 使用groovy脚本发送邮件

9
0

jiangss 初学数据Lv2

发表于2026-3-2 09:55

悬赏50

未解决

楼主
睿治平台中在数据整合版块有个组件为Groovy组件,可以调用通用的javax.mail-XXX.jar包进行邮件的发送,但需要自己在脚本中配置邮箱的账号密码及服务器信息,如下所示:import javax.mail.*
import javax.mail.internet.*
import java.util.Properties


// 核心配置
def smtpHost = "smtp.esensoft.com"       // 邮箱服务器
def fromEmail = "XXXXXXXXXXXXXXXXXXXX"  // 发件人邮箱
def fromPwd = "XXXXXXXXXXXXXXXXXXXX"    // 密码/授权码
def toEmail = "XXXXXXXXXXXXXXXXXXXX" // 收件人邮箱
def subject = "邮件标题"        // 邮件标题


//邮件正文
def content = "邮件正文"


// 邮件配置
Properties props = new Properties()
props.put("mail.smtp.host", smtpHost)
props.put("mail.smtp.port", 465)
props.put("mail.smtp.auth", "true")
props.put("mail.smtp.ssl.enable", "true")
props.put("mail.smtp.ssl.trust", smtpHost)


// 认证与发送
try {
    Session session = Session.getInstance(props, new Authenticator() {
        protected PasswordAuthentication getPasswordAuthentication() {
            return new PasswordAuthentication(fromEmail, fromPwd)
        }
    })
    // ========== 关键:开启调试模式 ==========
    session.setDebug(true)
    // ======================================
    MimeMessage msg = new MimeMessage(session)
    msg.setFrom(new InternetAddress(fromEmail))
    msg.addRecipient(Message.RecipientType.TO, new InternetAddress(toEmail))
    msg.setSubject(subject, "UTF-8")
    msg.setText(content, "UTF-8")
    Transport.send(msg)
    println("发送成功")
} catch (Exception e) {
    println("发送失败:${e.message}")
}


而实际上可以在睿治产品的系统设置-企业消息集成-邮箱配置中统一配置发件人和服务器信息,那么想使用在已经配置好的发件人信息,应该如何改写上面的脚本呢?

不要折中方法,就是使用groovy脚本自定义发送邮件



0个回答

只看楼主

登录后可回答问题,请登录注册

快速回复 返回顶部 返回列表

小时

全天响应

分钟

快速处理问题

工程师强势助力

明星产品
解决方案
联系合作

400咨询:400-0011-866

技术支持QQ:400-0011-866(工作日9:00-18:00)

产品建议邮箱yixin@esensoft.com

关注我们

扫TA学习更多干货

一对一专家交流

版权所有© 2006-2024 北京亿信华辰软件有限责任公司 京ICP备07017321号 京公网安备11010802016281号