Muy buenas:
Tengo un código que envía un email a una dirección que funciona sobre un SO pero no sobre otro y la versión de Java es la misma:
Código:
try{
//inicializamos propiedades del mail
Properties props = new Properties();
props.setProperty("mail.smtp.host", "smtp.loquesea.es");
props.setProperty("mail.smtp.port","25");
props.setPropert("mail.smtp.user", "[email protected]");
props.setProperty("mail.smtp.auth", "true");
//Establecer sesión con el servidor de correo
Session mailSession = Session.getDefaultInstance(props);
Message msg = new MimeMessage(mailSession);
Statement st= conexion.createStatement();
ResultSet rs = st.executeQuery("Obtengo el correo");
rs.next();
System.out.println("Error de conexión, mandando e-mail de reporte a "+rs.getObject("mail").toString());
msg.addRecipients(Message.RecipientType.TO, new InternetAddress[] { new InternetAddress(rs.getObject("mail").toString())});
//Título del correo y contenido
msg.setSubject("Loquesea");
msg.setText("Loquesea");
Transport t = mailSession.getTransport("smtp");
t.connect("direccion email","el password");
System.out.println("Mandando e-mail");
t.sendMessage(msg,msg.getAllRecipients());
System.out.println("e-mail mandado");
t.close();
¿Alguna idea de por qué puede funcionar en un SO y no en el otro?
El error que me lanza:
Código:
javax.mail.MessagingException: can't determine local email address
Casca al hacer el "t.sendMessage(msg,msg.getAllRecipients());"