• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 336
  • Last Modified:

javax.mail intermittent problem

Hi All,

We are using javax.mail to send email from our JSP application. Recently, we encountered intermittent problem. The mails were being sent from the application but the some of the recipients did not receive their mails. The mails are being sent to each of the recipients one at a time. We knew that the mail was being sent because the application will print "Mail sent successfully" otherwise it will print "Mail sent failed".

What is the likely cause of the problem? Thanks.


I have attached a sample code of sending mail.
    import java.io.*;
    import javax.mail.*;
    import javax.mail.internet.*;
    import javax.activation.*;
    
    public class SendApp {
        public static void send(String smtpHost, int smtpPort,
                                String from, String to,
                                String subject, String content)
                throws AddressException, MessagingException {
          
            try {
                // Create a mail session
                java.util.Properties props = new java.util.Properties();
                props.put("mail.smtp.host", smtpHost);
                Session session = Session.getDefaultInstance(props, null);
    
                // Construct the message
                Message msg = new MimeMessage(session);
                msg.setFrom(new InternetAddress(from));
                msg.setRecipient(Message.RecipientType.TO, new InternetAddress(to));
                msg.setSubject(subject);
                msg.setText(content);
    
               // Send the message
               Transport.send(msg);
               System.out.println("\nMail sent Successfully to "+to.trim() + " email: "+subject.trim()+".");
 
           } catch (Exception e) {
		e.printStackTrace();
			
						System.out.println("\nMail sent FAILED to "+to.trim() + " email: "+subject.trim()+".");
	   }
 
        }
    
        public static void main(String[] args) throws Exception {
            // Send a test message
            send("hostname", "joe@smith.com", "sue@smith.com",
                 "re: dinner", "How about at 7?");
        }
    }

Open in new window

0
rospcc
Asked:
rospcc
3 Solutions
 
kawasCommented:
Could be spam filters ... Do the same ones fail all of the time?
0
 
rospccAuthor Commented:
No, it was different ones. My application has two different types of emails. The two types are one with attachment and one without. The code snippet that i showed earlier is used to send mail without attachment. Most of the mails that failed are those with attachment.
0
 
objectsCommented:
have u checked for bounces
and if you have access to the smtp server check its queues/logs
0
Cloud Class® Course: MCSA MCSE Windows Server 2012

This course teaches how to install and configure Windows Server 2012 R2.  It is the first step on your path to becoming a Microsoft Certified Solutions Expert (MCSE).

 
TimYatesCommented:
Can you post the code for the mails that failed?
0
 
TimYatesCommented:
Actually, I agree more with objects...  The sendmail logs will probably be the first place to check...
0
 
rospccAuthor Commented:
sorry ...but where can i check the sendmail logs?
0
 
TimYatesCommented:
On our linux system, they are located at:

  /var/log/maillog

Tim
0
 
KuldeepchaturvediCommented:
it depends on the host that you are using... if its connecting an outlook/lotus server , then these servers will have a que where you can check the logs

In short: whatever SMTP host you are connecting to, will have logs of the mails going thru it.
0
 
rospccAuthor Commented:
They restarted the SMTP server, and the mails can be sent out successfully again after that.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Cloud Class® Course: Certified Penetration Testing

This CPTE Certified Penetration Testing Engineer course covers everything you need to know about becoming a Certified Penetration Testing Engineer. Career Path: Professional roles include Ethical Hackers, Security Consultants, System Administrators, and Chief Security Officers.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now