sending mail programatically
hI GUYS
This is sri, i need to have done an application to send mails programatically, below is the code, can any one fix the bug or give me the code which works fine?
Any help will be appreciable!!!!!!
Thanks & Regards,
Sri.
CODE
import java.util.*;
import java.sql.*;
import javax.mail.*;
import javax.mail.internet.*;
import java.io.*;
import java.net.InetAddress;
import java.util.Properties;
import java.util.Date;
public class Mail
{
public static void main(String g[])
{
String from="pocketsrini@gmail.com";
String[] to={"sri_myaccount@yahoo.com","sri_myaccount@rediffmail.com"};
Mail m=new Mail();
m.sendMail(from,to,"test","Ignore this dear");
}
public void sendMail(String from,String to[],String sub,String msg)
{
try{
String host = "smtp.gmail.com";//String host = "smtp.gmail.com";
//String from = "srinivasan_loganathan@cms.com";//String from = "vedi@gmail.com";
//String to = "keikun_naruchan@yahoo.com";
//String to = "srinivasan_loganathan@cms.com";
//String to = "pocketsrini@gmail.com";
//String to = "srinivasan_loganathan@cms.com";
String[] recipients=new String[to.length];
for(int i=0;i<to.length;i++){
recipients=to;
}
// Get system properties
Properties props = System.getProperties();
// Setup mail server
props.put("mail.smtp.host", host);
props.put("mail.smtp.port", "465");
props.put("mail.smtp.starttls.enable", "true");
props.put("mail.smtp.auth", "true");
// Get session
Authenticator auth = new MyAuthenticator();
Session session = Session.getDefaultInstance(props, auth);
// Define message
MimeMessage message = new MimeMessage(session);
message.setFrom(new InternetAddress(from));
message.setSubject(sub);
message.setText(msg);
for (int i = 0; i >< to.length; i++) {
message.addRecipient(Message.RecipientType.TO,
new InternetAddress(to));
}
//msg.setRecipients(Message.RecipientType.TO, addressTo);
// Send message
//com.sun.mail.smtp.SMTPSSLTransport.send(message);
Transport.send(message);
}catch(Exception e){e.printStackTrace();}
}
}
class MyAuthenticator extends Authenticator
{
MyAuthenticator()
{
super();
}
//protected PasswordAuthentication getPasswordAuthentication()
public PasswordAuthentication getPasswordAuthentication()
{
return new PasswordAuthentication("pocketsrini@gmail.com", "XXXXXXXX");
}
} // sendmail changeme cms
//
OUTPUT
C:\ftp\r&d>CP
C:\ftp\r&d>set classpath=C:\Program Files\IBM\WebSphere MQ\Java\lib\providerutil
.jar;C:\Program Files\IBM\WebSphere MQ\Java\lib\com.ibm.mqjms.jar;C:\Program Fil
es\IBM\WebSphere MQ\Java\lib\ldap.jar;C:\Program Files\IBM\WebSphere MQ\Java\lib
\jta.jar;C:\Program Files\IBM\WebSphere MQ\Java\lib\jndi.jar;C:\Program Files\IB
M\WebSphere MQ\Java\lib\jms.jar;C:\Program Files\IBM\WebSphere MQ\Java\lib\conne
ctor.jar;C:\Program Files\IBM\WebSphere MQ\Java\lib\fscontext.jar;C:\Program Fil
es\IBM\WebSphere MQ\Java\lib\com.ibm.mq.jar;c:\lib;C:\jdk1.5.0_06\lib;.;;C:\srin
ivas\mail\web\WEB-INF\lib\activation.jar;C:\srinivas\mail\web\WEB-INF\lib\mail.j
ar;;C:\srinivas\mail\web\WEB-INF\lib\activation.jar;C:\srinivas\mail\web\WEB-INF
\lib\mail.jar;
C:\ftp\r&d>javac Mail.java
C:\ftp\r&d>java Mail
javax.mail.MessagingException: Exception reading response;
nested exception is:
java.net.SocketException: Connection reset
at com.sun.mail.smtp.SMTPTransport.readServerResponse(SMTPTransport.java
:1462)
at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1260)
at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:37
0)
at javax.mail.Service.connect(Service.java:297)
at javax.mail.Service.connect(Service.java:156)
at javax.mail.Service.connect(Service.java:105)
at javax.mail.Transport.send0(Transport.java:168)
at javax.mail.Transport.send(Transport.java:98)
at Mail.sendMail(Mail.java:67)
at Mail.main(Mail.java:21)
Caused by: java.net.SocketException: Connection reset
at java.net.SocketInputStream.read(SocketInputStream.java:168)
at com.sun.mail.util.TraceInputStream.read(TraceInputStream.java:97)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
at java.io.BufferedInputStream.read(BufferedInputStream.java:235)
at com.sun.mail.util.LineInputStream.readLine(LineInputStream.java:75)
at com.sun.mail.smtp.SMTPTransport.readServerResponse(SMTPTransport.java
:1440)
... 9 more
C:\ftp\r&d>

