validación sitio sintaxis reply remitente queda por pertenece pensando ocurrió nuevo los incorrecta formulario form favor failed esto error envíe envia emisor electrónico dont dominio dirección cómo corrijo correo confirme campos campo java javamail

sitio - La dirección del remitente de correo Java se muestra en lugar de su nombre



sintaxis incorrecta en el campo reply-to. (6)

Estoy intentando enviar correo a mis amigos a través de mi aplicación Java Mail. Puedo hacerlo con éxito, sin embargo, la columna del destinatario en el buzón muestra la dirección de correo electrónico completa en lugar del nombre del remitente. Intenté cambiar varios parámetros, pero el buzón mostraría la dirección de correo electrónico completa en lugar del nombre del remitente.

usando este método para enviar el mensaje:

public void send(String key){ String to=key; String from="mygmailid"; String subject="wassp"; String text="Hello"; Properties props=new Properties(); props.put("mail.smtp.host", "smtp.gmail.com"); props.put("mail.smtp.user", "myname"); props.put("mail.smtp.socketFactory.port", "465"); props.put("mail.smtp.socketFactory.class","javax.net.ssl.SSLSocketFactory"); props.put("mail.smtp.auth", "true"); props.put("mail.smtp.port", "465"); Session mailSession=Session.getDefaultInstance(props); Message simpleMessage=new MimeMessage(mailSession); InternetAddress fromAddress=null; InternetAddress toAddress=null; try{ fromAddress=new InternetAddress(from); toAddress=new InternetAddress(to); } catch(AddressException e){ e.printStackTrace(); } try{ simpleMessage.setFrom(fromAddress); simpleMessage.setRecipient(RecipientType.TO,toAddress); simpleMessage.setSubject(subject); simpleMessage.setText(text); transport.connect("smtp.gmail.com",465, "myid@gmail.com", "mygmailpassword"); transport.sendMessage(simpleMessage, simpleMessage.getAllRecipients()); transport.close(); } catch(MessagingException e){ e.printStackTrace(); } }

Estoy llamando a este método como:

public static void main(String[] args) { MailSender mailer=new MailSender(); mailer.send("friendmail@gmail.com"); }


Cómo se muestra el campo desde es un detalle de implementación específico del cliente.

Por lo general, si el remitente tiene la forma de "Sender Name" <sender@domain.com> el cliente hará lo correcto según la configuración.

Algunos clientes deducirán la información del nombre de la información de su libreta de direcciones si falta.


Debe usar el constructor de dos cadenas de InternetAddress para pasar tanto la dirección de correo electrónico como el nombre de la persona. El correo electrónico resultante contendrá una cadena como Jarrod indicó.

InternetAddress fromAddress=new InternetAddress("my@example.com", "John Doe");


Las respuestas anteriores son correctas, pero descubrí que necesitaba colocarlas en una captura de prueba para que funcionen, esto es lo que encontré funcionó desde la aplicación de demostración sendemailwebapp.

Mensaje msg = nuevo MimeMessage (sesión);

try { msg.setFrom(new InternetAddress(userName, "YourName")); } catch (UnsupportedEncodingException e) { // TODO Auto-generated catch block e.printStackTrace(); } InternetAddress[] toAddresses = { new InternetAddress(toAddress) }; msg.setRecipients(Message.RecipientType.TO, toAddresses); msg.setSubject(subject); msg.setSentDate(new Date()); msg.setText(message);


Pruebe este código dentro del bloque try. Puede inicializar su nombre dentro del método setFrom () de MimeMessage.

simpleMessage.setFrom(new InternetAddress("Your mail id", "Your name"));

es decir,

try{ simpleMessage.setFrom(new InternetAddress("Your mail id", "Your name")); simpleMessage.setRecipient(RecipientType.TO,toAddress); simpleMessage.setSubject(subject); simpleMessage.setText(text); transport.connect("smtp.gmail.com",465, "myid@gmail.com", "mygmailpassword"); transport.sendMessage(simpleMessage, simpleMessage.getAllRecipients()); transport.close(); }


Puede establecer un nombre en InternetAddress usando

new InternetAddress("mail@example.com", "Your Name");


try { String from = " EMAIL ID"; String SMTP_AUTH_PWD = " PASSWORD "; Properties props = new Properties(); props.put("mail.smtp.host", "smtp.gmail.com"); props.put("mail.smtp.starttls.enable", "true"); props.put("mail.transport.protocol", "smtps"); props.put("mail.smtps.auth", "true"); String SMTP_HOST_NAME = "smtp.gmail.com"; int SMTP_HOST_PORT = 465; javax.mail.Session mailSession = Session.getDefaultInstance(props); mailSession.setDebug(true); Transport transport = ((javax.mail.Session) mailSession) .getTransport(); javax.mail.Message message = new MimeMessage(mailSession); message.setSubject("Testing SMTP-SSL"); message.setContent("", "text/plain"); message.addRecipient(javax.mail.Message.RecipientType.TO, new InternetAddress(receiver)); transport.connect(SMTP_HOST_NAME, SMTP_HOST_PORT, from, SMTP_AUTH_PWD); message.setFrom(new InternetAddress(from," YOUR PREFERED NAME ")); message.setSubject(subject); BodyPart messageBodyPart = new MimeBodyPart(); messageBodyPart.setText(body); Multipart multipart = new MimeMultipart(); multipart.addBodyPart(messageBodyPart); messageBodyPart = new MimeBodyPart(); message.setContent(multipart); transport.sendMessage(message, message.getRecipients(javax.mail.Message.RecipientType.TO)); }