El Limbo del Informático.


Enviar Correos en JAVA.

Publicado en Java por jantoniogc en 25 septiembre 2009

En el siguiente post indicaremos la forma de enviar correos en JAVA, tanto con correo adjunto como si él.

Para el envio de correo a una dirección determinada y con fichero adjunto:

/**
  * Enviar correo con documento adjunto a 1 direccion de correo.
  * @param smtphost: Servidor de Correo
  * @param Address : Direccion del remitente
  * @param Passw : Password del usuario remitente
  * @param ToAddress : Dirección a la que se dirige el mensage
  * @param fichero : fichero adjunto que se desea enviar
  * @param Cuerpo : Contiene el cuerpo del mensaje.
  * @param debug : Si es true se establace el modo depuración
  */
  public static void Enviar(String smtphost,String Address,String Passw,String ToAddress,String fichero, boolean debug, String Cuerpo){
     Properties props = new Properties();
     props.setProperty(“mail.smtp.host”, smtphost);
     props.setProperty(“mail.smtp.starttls.enable”, “true”);
     //props.setProperty(“mail.smtp.port”,”8080″);
     props.setProperty(“mail.smtp.user”, Address);
     props.setProperty(“mail.smtp.auth”, “false”);
     Session session = Session.getDefaultInstance(props);
     session.setDebug(debug);
 
     BodyPart texto = new MimeBodyPart();
     BodyPart adjunto = new MimeBodyPart();
     try {
      texto.setText(Cuerpo);
      adjunto.setDataHandler(new DataHandler(new FileDataSource(fichero)));
      adjunto.setFileName(fichero);
      MimeMultipart multiParte = new MimeMultipart();
      multiParte.addBodyPart(texto);
      multiParte.addBodyPart(adjunto);
      MimeMessage message = new MimeMessage(session);
      message.setFrom(new InternetAddress(Address+”@correo.es”));
      message.addRecipient(Message.RecipientType.TO, new InternetAddress(ToAddress));
      message.setSubject(“Fichero Log RobotAD”);
      message.setContent(multiParte);
      Transport t = session.getTransport(“smtp”);
      t.connect(Address,Passw);
      t.sendMessage(message,message.getAllRecipients());
      t.close();
     } catch (MessagingException e) {
    CargaFicheroDA.log.println(“Error al enviar correo: “+e.getMessage());
     }  
  }
 
Para enviar los correos sin asunto sería algo así:
 
/**
   * Envía correos sin archivo adjunto.
   * @param smtphost
   * @param Address
   * @param Passw
   * @param ToAddress
   * @param debug
   * @param Cuerpo
   */
  public static void EnviarSA(String smtphost,String Address,String Passw,String ToAddress, boolean debug, String Cuerpo){
     Properties props = new Properties();
     props.setProperty(“mail.smtp.host”, smtphost);
     props.setProperty(“mail.smtp.starttls.enable”, “true”);
     //props.setProperty(“mail.smtp.port”,”8080″);
     props.setProperty(“mail.smtp.user”, Address);
     props.setProperty(“mail.smtp.auth”, “false”);
     Session session = Session.getDefaultInstance(props);
     session.setDebug(debug);
 
     BodyPart texto = new MimeBodyPart();
     //BodyPart adjunto = new MimeBodyPart();
     try {
      texto.setText(Cuerpo);
     // adjunto.setDataHandler(new DataHandler(new FileDataSource(fichero)));
     // adjunto.setFileName(fichero);
      MimeMultipart multiParte = new MimeMultipart();
      multiParte.addBodyPart(texto);
      //multiParte.addBodyPart(adjunto);
      MimeMessage message = new MimeMessage(session);
      message.setFrom(new InternetAddress(Address+”@correo.es”));
      message.addRecipient(Message.RecipientType.TO, new InternetAddress(ToAddress));
      message.setSubject(“Fichero Log RobotAD”);
      message.setContent(multiParte);
      Transport t = session.getTransport(“smtp”);
      t.connect(Address,Passw);
      t.sendMessage(message,message.getAllRecipients());
      t.close();
     } catch (MessagingException e) {
    CargaFicheroDA.log.println(“Error al enviar correo: “+e.getMessage());
     }  
  }
Advertisement

Deja un comentario

Fill in your details below or click an icon to log in:

Logo de WordPress.com

You are commenting using your WordPress.com account. Log Out / Cambiar )

Twitter picture

You are commenting using your Twitter account. Log Out / Cambiar )

Facebook photo

You are commenting using your Facebook account. Log Out / Cambiar )

Connecting to %s


Seguir

Get every new post delivered to your Inbox.