在Glassfish 4

时间:2016-05-04 16:52:58

标签: eclipse deployment build glassfish javamail

我当前的项目包括使用JavaMail来确认用户电子邮件。我遇到的问题是,每次使用eclipse时, build&在本地Glassfish服务器上部署我的Web应用程序,JavaMail崩溃时出现以下异常:

Severe: java.lang.SecurityException: Access to default session denied
at javax.mail.Session.getDefaultInstance(Session.java:333)
at utils.MailService.sendEmailSSL(MailService.java:58)

这里的代码剪断了我获取会话的地方,并且抛出了上述异常:

Session session = Session.getDefaultInstance(
                     props,
                     new javax.mail.Authenticator(){
                        protected PasswordAuthentication getPasswordAuthentication() {
                        return new PasswordAuthentication(usr, pwd);
                    }
                });

到目前为止我找到的解决方法是重新启动Glassfish,之后JavaMail再次正常运行。问题是,即使在我的代码中发生最小的更改之后,重新启动也非常烦人且耗时。

我的问题:是否有可能仅重置JavaMail服务并将其与构建事件绑定?

当然也欢迎任何其他建议:)

1 个答案:

答案 0 :(得分:0)

如果可以避免使用Session.getDefaultInstance。使用Session.getInstance并修复部分common mistakes