Mail sending through proxy client

I have the following simple code to send mail through a SOCKS proxy client:

package com.apna.beans;

import java.util.Properties;

import javax.mail.*;

import javax.mail.internet.*;

import javax.activation.DataSource;

import javax.activation.FileDataSource;

import javax.activation.DataHandler ;

public class SMail{

public static void main(String[]a){

System.setProperty("proxySet","true");

/*System.getProperties().put("http.proxyPort","25");

System.getProperties().put("http.proxyHost","192.168.0.1");*/

Properties props = System.getProperties();

String msg = "";

// Get system properties

final String username = "vedijitendra";

final String password = "sendmail";

props.put("socksProxyHost", "pc-2");

props.put("socksProxyPort", "1080");

props.put("mail.smtp.host", "smtp.gmail.com");

props.put("mail.smtp.starttls.enable", "true");

props.put("mail.user", username);

props.put("mail.smtp.auth","true"); // this is imp for authorisation.

//props.put("mail.host", "192.168.0.1");

props.put("mail.debug", "true");

props.put("mail.store.protocol", "pop3");

props.put("mail.transport.protocol", "smtp");

try{

//here the authorisation takes place using an Anonymous class.

Session session = Session.getDefaultInstance(props,

new javax.mail.Authenticator (){

protected

javax.mail.PasswordAuthentication

getPasswordAuthentication() {

return new

javax.mail.PasswordAuthentication(username,

password);

}});

// Define message

Message message = new MimeMessage(session);

message.setFrom(new InternetAddress("vedijitendra@gmail.com"));

message.addRecipient( Message.RecipientType.TO, new

InternetAddress("jitendravedi@gmail.com"));

message.setSubject("Test");

message.setContent("text", "text/html");

// Send the message

Transport.send(message);

msg = "The mail has been sent.";

} catch(Exception e){

e.printStackTrace();

msg = "The mail has not been sent.";

}

}

}

I am able to connect to the GMail's SMTP server.

However, when the Transport. send method is executed, I get:

java.lang.NullPointerException

at com.sun.mail.util.SocketFetcher.startTLS(SocketFetcher.java:242)

at com.sun.mail.smtp.SMTPTransport.startTLS(SMTPTransport.java:1191)

at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:348)

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)

Any ideas?

[2869 byte] By [jitendravedia] at [2007-10-2 17:07:51]
# 1
Send email to javamail@sun.com telling me what version of JavaMail you'reusing and what version of the JDK you're using and I'll help you debug this.
bshannona at 2007-7-13 18:22:35 > top of Java-index,Enterprise & Remote Computing,Enterprise Technologies...