Ciao a tutti, mi sono appena iscritto in questo Forum. Cercavo aiuto riguardo javamail. Vi posto il mio intero codice :
Codice PHP:
package it.gestionaledue.util;
import java.util.Properties;
import javax.mail.*;
import javax.mail.internet.*;
public class MailManager {
private String to;
private String from;
private String subject;
private String body;
private String contentType;
private String userMail = "nickname@gmail.com";
private String passMail = "password";
private String smtpMail = "smtp.gmail.com";
private String timeout = "100000";
/**
*
* @param to
* @param from
* @param subject
* @param body
*/
public MailManager(String to, String from, String subject, String body) {
this.to = to;
this.from = from;
this.subject = subject;
this.body = body;
this.contentType = "text/html; charset=ISO-8859-1";
}
/**
*
* @throws MessagingException
* Metodo per inviare l'email;
*/
public void sendEmail() throws MessagingException {
Properties props = System.getProperties();
props.put("mail.smtp.host", smtpMail);
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.connectiontimeout", timeout);
props.put("mail.smtp.timeout", timeout);
Session session = Session.getInstance(props);
session.setPasswordAuthentication(
new URLName("smtp", smtpMail, 25, "INBOX", userMail, passMail), new PasswordAuthentication(userMail, passMail));
Message message = new MimeMessage(session);
InternetAddress from = new InternetAddress(this.from);
InternetAddress to[] = InternetAddress.parse(this.to);
message.setFrom(from);
message.setRecipients(Message.RecipientType.TO, to);
message.setSubject(this.subject);
message.setSentDate(new java.util.Date());
message.setText(this.body);
message.setContent(this.body, this.contentType);
Transport tr = session.getTransport("smtp");
tr.connect(smtpMail, userMail, passMail);
message.saveChanges();
tr.sendMessage(message, message.getAllRecipients());
tr.close();
}
}
l'eccezione è la seguente:
javax.mail.MessagingException: Could not connect to SMTP host: smtp.gmail.com, port: 25;
Aprendo il prompt dei comandi di windows e digitando:
telnet smtp.gmail.com 25 mi dice impossibile collegarmi...questo lo da anche con yahoo, aruba etc quindi c'è qualcosa che mi blocca questa porta e non so cosa ne come aprirla. Non ho firewall attivi ne antivirus ...quando faccio queste prove disattivo tutto.
Sempre su promt dei comandi invece di mettere la porta 25, metto la porta 587 e il messaggio che mi viene stampato è il seguente:
20 mx.google.com ESMTP k7sm823837wej.26, quindi presumo che con la porta 587 ho via libera...ma quando inserisco questa porta nel codice java, invece di 25...mi dice sempre impossibile collegarsi alla porta 25...