[ https://jira.duraspace.org/browse/DS-1182?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=26675#comment-26675 ]
DSpace @ Lyncode commented on DS-1182:
--------------------------------------
Hi Ivan, i'd propose to leave it open, mainly because this only happens in a very specific scenario. My opinion is that Mark's solution solves the problem, but it would be better to wait for a confirmation from the community in order to close the ticket. At least, i think i could get some feedback from FCCN (from Portugal) which is currently facing this problem.
> Javamail: Getting Session object with getDefaultInstace
> -------------------------------------------------------
>
> Key: DS-1182
> URL: https://jira.duraspace.org/browse/DS-1182
> Project: DSpace
> Issue Type: Bug
> Components: DSpace API, JSPUI
> Affects Versions: 1.5.0, 1.5.1, 1.5.2, 1.6.0, 1.6.1, 1.6.2, 1.7.0, 1.7.1, 1.7.2, 1.8.0, 1.8.1, 1.8.2
> Environment: Unix
> Reporter: João Melo
> Assignee: Mark H. Wood
> Priority: Critical
> Labels: Email, Javamail, SecurityException, Tomcat
> Fix For: 3.0
>
>
> Context
> - Tomcat 6 with multiple hosts with one application per host (DSpace is one of them).
> - Local SMTP server with no Authentication required
> Problem
> As the Javamail API documentation[1] states, the method getDefaultInstance() - used in DSpace - returns an object shared among the JVM context. If, for some reason, another application (not DSpace) in tomcat refreshes the Authenticator instance within the default session, DSpace will start getting errors when trying to send emails (throwing SecurityException).
> Solution
> - A simple solution to this problem would be replacing all Session.getDefaultInstance() calls by Session.getInstance().
> - Another (more efficient) solution would be defining a singleton, calling the Session.getInstance using some wrapper that would replace all the Session.getDefaultInstance() calls.
> Resources
> [1] Javamail API getDefaultSession - http://javamail.kenai.com/nonav/javadocs/javax/mail/Session.html#getDefaultInstance(java.util.Properties)
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
|