我当前的项目包括使用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服务并将其与构建事件绑定?
当然也欢迎任何其他建议:)