Bug 1115813

Summary: [Enhancement] An email sent from JBoss ON using custom java mail server is not delivered because setFrom() is not set in JON MimeMessage
Product: [JBoss] JBoss Operations Network Reporter: bkramer <bkramer>
Component: Core ServerAssignee: Heiko W. Rupp <hrupp>
Status: CLOSED CURRENTRELEASE QA Contact: Mike Foley <mfoley>
Severity: high Docs Contact:
Priority: unspecified    
Version: JON 3.2, JON 3.2.1CC: hrupp, jshaughn, myarboro
Target Milestone: DR01Keywords: Triaged
Target Release: JON 3.3.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
An issue with the JBoss ON server not including setFrom() in the MimeMessage from messages sent through the custom Java mail server caused emails not to be delivered. The only way to workaround the issue was to relax the SMTP policy in the custom mail server in cases when email comes from the JBoss ON server. The fix now sets the From address correctly using setFrom() before the message is sent through the custom Java mail server. Emails can now be correctly sent.
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-12-11 13:59:27 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On: 1115815    
Bug Blocks:    

Description bkramer 2014-07-03 07:48:44 UTC
Description of problem:
An email sent from JBoss ON using custom java mail server is not delivered because setFrom() is not set in JON MimeMessage

Version-Release number of selected component (if applicable):
JBoss ON 3.2.x

How reproducible:
Always

Steps to Reproduce:
1. When JBoss ON sends an email, From address is not set [1] and it should be according to the javadoc of javax.mail package [2].
2. Custom SMTP server, will not deliver email where From address is not set.
3.

Actual results:
When custom SMTP server is used, emails from JON server will not be delivered.

Expected results:
Emails from JON server are properly delivered when custom SMTP server is used.

Additional info:
[1]
**************************************************************************
public Collection<String> sendEmail(Collection<String> toAddresses, String messageSubject, String messageBody) {

        MimeMessage mimeMessage = new MimeMessage(mailSession);
        try {
            mimeMessage.setSubject(messageSubject);
            mimeMessage.setContent(messageBody, "text/plain");
        } catch (MessagingException e) {
            e.printStackTrace(); // TODO: Customise this generated block
            return toAddresses;
        }

        Exception error = null;
        Collection<String> badAdresses = new ArrayList<String>(toAddresses.size());

        // Send to each recipient individually, do not throw exceptions until we try them all
        for (String toAddress : toAddresses) {
            try {
                LOG.debug("Sending email [" + messageSubject + "] to recipient [" + toAddress + "]");
                InternetAddress recipient = new InternetAddress(toAddress);
                Transport.send(mimeMessage, new InternetAddress[] { recipient });
            } catch (Exception e) {
                LOG.error("Failed to send email [" + messageSubject + "] to recipient [" + toAddress + "]: "
                    + e.getMessage());
                badAdresses.add(toAddress);

                // Remember the first error - in case its due to a session initialization problem,
                // we don't want to lose the first error.
                if (error == null) {
                    error = e;
                }
            }
        }

        if (error != null) {
            LOG.error("Sending of emails failed for this reason: " + error.getMessage());
        }

        return badAdresses;
    }
**************************************************************************


[2] http://docs.oracle.com/javaee/6/api/javax/mail/package-summary.html

Comment 1 Heiko W. Rupp 2014-07-03 10:06:06 UTC
Proposing for 3.2.3, as this is already fixed in master 48c6a2e9

Comment 4 Jay Shaughnessy 2014-07-28 19:24:51 UTC
Now that it's 3.3 assigning to hrupp and setting modified as it's already in the release branch.

Comment 5 Simeon Pinder 2014-07-31 15:51:40 UTC
Moving to ON_QA as available to test with brew build of DR01: https://brewweb.devel.redhat.com//buildinfo?buildID=373993

Comment 7 Jared MORGAN 2014-10-29 05:59:36 UTC
I'm a little confused here. The KBase suggests that the issue is when JON send