Foros del Web » Programación para mayores de 30 ;) » Programación General »

JavaMail-Urgente

Estas en el tema de JavaMail-Urgente en el foro de Programación General en Foros del Web. Buenas, estoy intentando intentando utilizar la API JavaMail pero no se como, me mandaron a hacer un proyecto que consiste en resivir un mail y ...
  #1 (permalink)  
Antiguo 24/11/2007, 15:11
NBS
 
Fecha de Ingreso: noviembre-2007
Mensajes: 2
Antigüedad: 16 años, 5 meses
Puntos: 0
JavaMail-Urgente

Buenas, estoy intentando intentando utilizar la API JavaMail pero no se como, me mandaron a hacer un proyecto que consiste en resivir un mail y verificar si los datos estan correctos.
Por ejemplo si el Asunto no es Reserva responderle al cliente que esta mal el asunto y tiene que ser reserva, de lo contrario si es asi agarrar el cuerpo y verificar ciertos datos. El formato seria nombreObra:hora:minutos:fecha:nombreSector:dia:mes :ci.
Pero no se como hacer esto. Necesito ayuda urgente.

Saludos
  #2 (permalink)  
Antiguo 25/11/2007, 05:33
Avatar de dogduck  
Fecha de Ingreso: enero-2006
Ubicación: ¿Atlantida, Hesperides, Islas afortunadas?
Mensajes: 2.231
Antigüedad: 18 años, 4 meses
Puntos: 19
Re: JavaMail-Urgente

http://java.sun.com/products/javamail/index.jsp
http://club.idecnet.com/~ccastano/femepa/020106.htm
http://club.idecnet.com/~ccastano/femepa/071205.htm

Código:
import java.net.*;
import java.io.*;

class smtpCliente {
    public static void main( String args[] ) {
        Socket s = null;
        DataInputStream sIn = null;
        DataOutputStream sOut = null;

        // Abrimos una conexión con smtp.terra.es en el puerto 25
        // que es el correspondiente al protocolo smtp, e intentamos
        // abrir los streams de entrada y salida
        try {
            s = new Socket( "smtp.terra.es",25 );
            sIn = new DataInputStream( s.getInputStream() );
            sOut = new DataOutputStream( s.getOutputStream() );
        } catch( UnknownHostException e ) {
            System.out.println( "No conozco el host" );
        } catch( IOException e ) {
            System.out.println( e );
            }

        // Si todo está inicializado correctamente, vamos a escribir
        // algunos datos en el canal de salida que se ha establecido
        // con el puerto del protocolo smtp del servidor
        if( s != null && sIn != null && sOut != null )
            {
            try {
                // Tenemos que respetar la especificación SMTP dada en
                // RFC1822/3, de forma que lo que va en mayúsculas
                // antes de los dos puntos tiene un significado especial
                // en el protocolo
                sOut.writeBytes( "MAIL From: [email protected]\n" );
                sOut.writeBytes( "RCPT To: [email protected]\n" );
                sOut.writeBytes( "DATA\n" );
                sOut.writeBytes( "From: [email protected]\n" );
                sOut.writeBytes( "Subject: Pruebas\n" );
                // Ahora el cuerpo del mensaje
                sOut.writeBytes( "Hola, desde el curso de intranet\n" );
                sOut.writeBytes( "\n.\n" );

                // Nos quedamos a la espera de recibir el "Ok" del
                // servidor para saber que ha recibido el mensaje
                // correctamente, momento en el cual cortamos
                String respuesta;
                while( ( respuesta = sIn.readLine() ) != null )
                    {
                    System.out.println( "Servidor: "+respuesta );
                    if( respuesta.indexOf( "Ok" ) != -1 )
                        break;
                    }

                // Cerramos todo lo que hemos abierto
                sOut.close();
                sIn.close();
                s.close();
              } catch( UnknownHostException e ) {
                System.out.println( "Intentando conectar: "+e );
            } catch( IOException e ) {
                System.out.println( e );
                }
            }
        }
    }
Esto es un ejemplo de cliente smtp en java sacado del curso de java de wikilearnig.
Para implementar un servidor smtp, creo que son palabras mayores, pero puedes hacer que tu programa monitorice los mensajes que le lleguen al servidor smtp, por lo que deberás elegir que servidor de smtp usar, qmail, sendmail, exchange, ...
Para bajarte las api de javamail http://java.sun.com/products/javamai...ads/index.html
salu2
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:19.