如何在运行时设置smtp配置

时间:2011-12-27 11:23:22

标签: playframework

Plz提出另一种设置“mail.smtp.user”和“#mail.smtp.pass”的方法,除了app.conf文件。

因为我们想使用多个smtp帐户在单个应用程序中发送多个邮件。

那么有没有办法像运行java

那样在运行时验证smtp服务器
 new javax.mail.Authenticator() {
            protected PasswordAuthentication getPasswordAuthentication() {
            return new PasswordAuthentication("abc@abc.com","abc");             
            }}

2 个答案:

答案 0 :(得分:1)

我认为这不可能以干净的方式进行。您可以拨打Mail.getSession(),然后拨打Mail.session = Session.getInstance(session.getProperties(), new SMTPAuthenticator(user, password)); 但是不是线程安全的。所以我建议使用一个易于使用的不同邮件库,为您提供更大的灵活性。另一个解决方案是从Mail.java获取代码并创建一个MultiMail.java,它具有不同键的实例。

答案 1 :(得分:0)

也许在运行时设置属性?

System.setProperty("mail.smtp.user", "admin");