2009-09-26 5 views
1

Je suis en train de se connecter au serveur demande Javamail James, mais je reçoiséchec de connexion James serveur exception

javax.mail.MessagingException: Impossible de se connecter à l'hôte SMTP: localhost, le port: 4555; exception imbriquée est: java.net.SocketException: non valide arguent: connecter

Voici le code, ce qui crée pour moi un petit problème:

import java.security.Security; 

import java.io.IOException; 
import java.io.PrintWriter; 
import java.util.Properties; 
import javax.mail.*; 
import javax.mail.internet.*; 

public class mail { 

public static void main(String[] argts) 
{ 
Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider()); 


     String mailHost = "your.smtp.server"; 



     String to = "[email protected]"; 



     String from = "[email protected]"; 
     String subject = "jdk"; 
     String body = "Down to wind"; 

     if ((from != null) && (to != null) && (subject != null) && (body != null)) // we have mail to send 
     { 

     try { 


      //Get system properties 
      Properties props = System.getProperties(); 


      props.put("mail.smtp.user", "red"); 
      props.put("mail.smtp.host", "localhost"); 
      props.put("mail.debug", "true"); 
      props.put("mail.smtp.port", 4555); 


      props.put("mail.smtp.socketFactory.port", 4555); 
      props.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory"); 
      props.put("mail.smtp.socketFactory.fallback", "false"); 

      Session session = Session.getInstance(props,null); 


      Message message = new MimeMessage(session); 
      message.setFrom(new InternetAddress(from)); 
      message.setRecipients(Message.RecipientType.TO, new InternetAddress[] { new InternetAddress(to) }); 
      message.setSubject(subject); 
      message.setContent(body, "text/plain"); 
      message.setText(body); 
      Transport.send(message); 


      System.out.println("<b>Thank you. Your message to " + to + " was successfully sent.</b>"); 

     } catch (Throwable t) { 
      System.out.println("Teri maa ki "+t); 
     } 


     } 

    } 




} 

Merci à l'avance. :)

Répondre

1
 props.put("mail.smtp.host", "localhost"); 
     props.put("mail.smtp.port", 4555); 

Ces deux lignes font votre code se connecter à votre ordinateur local (votre propre machine?), Le port 4555. Je présume que le serveur SMTP en question est en cours d'exécution sur un autre hôte. Placez le nom d'hôte dans la première propriété et le port correct (généralement 25) dans le second, et cela fonctionnera. Si cela ne vous aide pas, veuillez fournir des détails sur votre configuration: hôte sur lequel vous exécutez le serveur SMTP, port sur lequel il écoute, utilise-t-il SSL (selon votre code, hein?), Où courez-vous? le client, ...

Questions connexes