Envio email en java

d_v_d_garcia
29 de Marzo del 2004
Bueno el problema que tengo es el siguiente, yo tengo una clase que envia emails, yo tengo conexion adsl de telefonica, y en el host meto el de telefonica (POP3.telefonica.net), el problema es que solamente me envia emails a cuentas de telefonica, si intengo poner otra dirección como por ejemplo una de hotmail me salta una excepcion:

import java.util.*;
import java.io.*;
import java.sql.*;
import java.text.*;
import java.util.Vector;
import java.net.* ;
import javax.mail.*;
import javax.mail.event.*;
import javax.mail.internet.*;



public class Enviar_email{

public Enviar_email(){
}

public String enviar(){

String HOST = "pop3.telefonica.net";
String REMITENTE = "David"
String DESTINATARIO = "[email protected]";
String ASUNTO = "hola";
String CONTENIDO = "hola tio que tal";

String cadError="";
String valor="1";

Properties properties = new Properties();
properties.put("mail.smtp.host",HOST);
properties.put("mail.from",REMITENTE);
Session session = Session.getInstance(properties,null);

try
{
Message message = new MimeMessage(session);
InternetAddress[] address = {new InternetAddress(DESTINATARIO)};
message.setRecipients(Message.RecipientType.TO, address);
message.setFrom(new InternetAddress(REMITENTE));
message.setSubject(ASUNTO);
message.setContent(CONTENIDO,"text/html");
Transport transport = session.getTransport(address[0]);
transport.addConnectionListener(new ConnectionHandler());
transport.addTransportListener(new TransportHandler());
transport.connect();
transport.sendMessage(message,address);
}
catch(Exception e)
{
cadError = e.toString();
return cadError;
}
return valor;
}
}

class ConnectionHandler extends ConnectionAdapter
{
public void opened(ConnectionEvent e)
{
//System.out.println("Connection opened");
}
public void disconnected(ConnectionEvent e)
{
//System.out.println("Connection disconnected");
}
public void closed(ConnectionEvent e)
{
//System.out.println("Connection closed");
}
}


class TransportHandler extends TransportAdapter
{
public void messageDelivered(TransportEvent e)
{
//System.out.println("Message delivered");
}
public void messageNotDelivered(TransportEvent e)
{
//System.out.println("Message Not Delivered");
}
public void messagePartiallyDelivered(TransportEvent e)
{
//System.out.println("Message Partially Delivered");
}
}


Carlos Daniel
29 de Marzo del 2004
mirá, lo que pasa es que en esta linea
properties.put("mail.smtp.host",HOST);
definìs que vas a tranajar con smtp, así que debés
definir el servidor smtp de telefonica, pues
POP3.telefonica.com es para correo de entrada, pero
lo que vos necesitás es el servidor para correo de
salida (SMTP?.telefonica.com). (no se si relamente este es el ssrvidor de salida, tenés que averiguar)
Si me entendió?