Estoy tratando de enviar un correo electrónico utilizando el servidor de correo de mi compañía. Pero me estoy haciendo la siguiente excepciónCómo enviar un correo electrónico utilizando el servidor de intercambio MS
Caused by: com.sun.mail.smtp.SMTPSendFailedException: 530 5.7.1 Client was not authenticated
at com.sun.mail.smtp.SMTPTransport.issueSendCommand(SMTPTransport.java:1388)
at com.sun.mail.smtp.SMTPTransport.mailFrom(SMTPTransport.java:959)
at com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:583)
at javax.mail.Transport.send0(Transport.java:169)
at javax.mail.Transport.send(Transport.java:98)
Aquí está mi código de ejemplo,
Properties props = System.getProperties();
// Setup mail server
props.put("mail.smtp.host", "example.server.com");
props.put("mail.smtp.auth", "true");
props.put("mail.debug", "true");
props.put("mail.smtp.port", "25");
// Get session
//Session session = Session.getDefaultInstance(props, null);
Session session = Session.getDefaultInstance(props,
new javax.mail.Authenticator() {
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication("username", "password");
}
});
// Define message
MimeMessage message = new MimeMessage(session);
// Set the from address
message.setFrom(new InternetAddress(from));
// Set the to address
message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));
// Set the subject
message.setSubject("Hello JavaMail");
// Set the content
message.setText("Welcome to JavaMail");
// Send message
Transport.send(message);
Qué pedazo de código es incorrecto? Como nombre de usuario y contraseña, estoy usando la dirección de correo electrónico y la contraseña de mi empresa.
es posible que mi administrador de TI puede crear un usuario de prueba en el servidor de intercambio y que puedo usar para enviar correos electrónicos? – user509755
No veo por qué no. Mi aplicación web se ejecuta imitando a un usuario de dominio que es lo que se conecta con el servidor de intercambio. No sé demasiado sobre el intercambio, pero el último sitio en el que se instaló la aplicación tuvo que permitir la retransmisión a través de smtp desde el servidor web. después de esto dejé de obtener errores 5.7.1. si no puedes hacer un solo usuario, entonces deberías poder hacer una sola máquina al menos. Aquí hay información sobre un problema con un único usuario que no puede retransmitir y tiene alguna información interesante http://social.technet.microsoft.com/Forums/en-US/exchangesvrtransport/thread/1a84a06a-f1c8-40b4-ace8 -1e264f218aa1/ – WraithNath
Creo que el área que necesita buscar es 'Recibir conectores' – WraithNath