Visualizzazione dei risultati da 1 a 2 su 2

Visualizzazione discussione

  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2013
    Messaggi
    17

    Problema con l'invio di una mail su java

    Salve, sono nuovo del forum ma spesso ne ho preso spunti utili;
    provando a scrivere una applicazione in java che alla registrazione di un utente gli manda una email non riesco, mi viene restituita una eccezione e vorrei chiedere cosa c'è di sbagliato e come poter risolvere, a me interessa solo poter inviare una mail!
    L'indirizzo dal quale la mail dovrebbe partire è di gmail : es. prova @ gmail.com

    ho seguito quanto messo in questa discussione: http://forum.html.it/forum/showthrea...eadid=1419293&

    questa è la chiamata:
    codice:
    EmailSender emailDaMandare = new EmailSender("----@gmail.com", "---------", "----@gmail.com", emailNuovoUtente, "OGGETTO: Recupero password", informazioniRegistrazione);
    emailDaMandare.inviaEmail();
    e questa la classe EmailSender.java:
    codice:
    import javax.mail.*;
    import javax.mail.internet.*;
    import com.sun.mail.smtp.SMTPSSLTransport;
    import java.util.Properties;
    
    public class EmailSender {
    
        private static final String SMTP_HOST_NAME = "smtp.gmail.com";
        private static final int SMTP_HOST_PORT = 465;
        private String SMTP_AUTH_USER = "user@gmail.com";
        private String SMTP_AUTH_PWD  = "pass";
        private String subject = "oggetto";
        private String[] informazioni;
        private String destinatario;
        
        public EmailSender(String username, String password, String mittente, String destinatario, String oggetto, String[] informazioniRegistrazione){
            // TODO Auto-generated constructor stub
            SMTP_AUTH_USER = username;
            SMTP_AUTH_PWD  = password;
            subject = oggetto;
            informazioni = informazioniRegistrazione;
            this.destinatario = destinatario;
        }
    
        public void inviaEmail() {
            Properties props = new Properties();
    
            props.put("mail.transport.protocol", "smtps");
            props.put("mail.smtps.host", SMTP_HOST_NAME);
            props.put("mail.smtps.auth", "true");
            props.put("mail.smtp.starttls.enable","true");
            // props.put("mail.smtps.quitwait", "false");
            try {
                Session mailSession = Session.getDefaultInstance(props);
                mailSession.setDebug(true);
        
                MimeMessage message = new MimeMessage(mailSession);
                message.setSubject(subject);
        
                if(informazioni[0].equals("Registrazione"))
                    message.setContent("Benvenuto " + informazioni[1] + " " + informazioni[2] + "!!!\nti diamo il benvenuto!\n\nI tuoi dati di accesso sono:\nusername = " + informazioni[3] + "\npassword = " + informazioni[4], "text/plain");
                else
                    message.setContent("Salve utente " + destinatario + ",\nin merito alla tua richiesta di recupero, ecco la tua password:\n\t\t" + informazioni[0], "text/plain");
                //    message.setContent("This is a test", "text/plain");
        
                message.addRecipient(Message.RecipientType.TO, new InternetAddress(destinatario));
                SMTPSSLTransport transport = (SMTPSSLTransport)mailSession.getTransport("smtps");
        
                transport.connect(SMTP_HOST_NAME, SMTP_HOST_PORT, SMTP_AUTH_USER, SMTP_AUTH_PWD);
        
                transport.sendMessage(message, message.getRecipients(Message.RecipientType.TO));
                transport.close();
            }
            catch (Exception e) {
                System.out.println(e);
            }
        }
    }
    sulla console mi viene mostrato questo:
    Loading javamail.default.providers from jar:file:/C:/Program%20Files/eclipse2/workspace_Eclipse/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/RestfulWebServiceProject/WEB-INF/lib/javax.mail_1.4.0.v201005080615.jar!/META-INF/javamail.default.providers
    DEBUG: loading new provider protocol=smtp, className=org.apache.geronimo.javamail.transport.s mtp.SMTPTransport, vendor=Apache Software Foundation, version=1.0
    DEBUG: loading new provider protocol=smtps, className=org.apache.geronimo.javamail.transport.s mtp.SMTPTSransport, vendor=Apache Software Foundation, version=1.0
    DEBUG: loading new provider protocol=nntp-post, className=org.apache.geronimo.javamail.transport.n ntp.NNTPTransport, vendor=Apache Software Foundation, version=1.0
    DEBUG: loading new provider protocol=nntp, className=org.apache.geronimo.javamail.store.nntp. NNTPStore, vendor=Apache Software Foundation, version=1.0
    DEBUG: loading new provider protocol=pop3, className=org.apache.geronimo.javamail.store.pop3. POP3Store, vendor=Apache Software Foundation, version=1.0
    DEBUG: getProvider() returning provider protocol=smtps; type=javax.mail.Provider$Type@4ac66122; class=org.apache.geronimo.javamail.transport.smtp. SMTPTSransport; vendor=Apache Software Foundation;version=1.0
    javax.mail.NoSuchProviderException: Unable to load class for provider: protocol=smtps; type=javax.mail.Provider$Type@4ac66122; class=org.apache.geronimo.javamail.transport.smtp. SMTPTSransport; vendor=Apache Software Foundation;version=1.0
    Ultima modifica di aledpa; 28-12-2013 a 17:29

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.