javax.mail.MessagingException: impossible de se connecter à l'hôte SMTP: localhost, port: 25
Je reçois problème lors de l'envoi d'e-mail.
javax.mail.SendFailedException: Sending failed;
nested exception is:
javax.mail.MessagingException: Could not connect to SMTP host: localhost, port: 25;
nested exception is:
java.net.ConnectException: Connection refused: connect
at javax.mail.Transport.send0(Transport.java:219)
at javax.mail.Transport.send(Transport.java:81)
at org.apache.jsp.online_005fScheme_005fSend_005fMail_jsp.sendMail(online_005fScheme_005fSend_005fMail_jsp.java:116)
at org.apache.jsp.online_005fScheme_005fSend_005fMail_jsp._jspService(online_005fScheme_005fSend_005fMail_jsp.java:416)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:369)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:308)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:259)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:879)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
at java.lang.Thread.run(Thread.java:619)
Je utiliser le code ci-dessous snipet.
Properties props = new Properties();
props.put("mail.smtp.host", "10.101.3.229");
email envoyer le programme est en cours d'exécution sur tomcat 5. Quelques fois il fonctionne très bien et quelques fois c'résultats de l'exception ci-dessus. une fois qu'elle est née résultant exception ci-dessus, il en résulte les mêmes sur tous les accès. mais dès que j'ai redémarrer tomcat serveur, il commence à travailler à nouveau.
Donc je ne pouvais pas trouver ce qui est une raison. parfois même fonctionne bien et parfois, les résultats de l'exception ci-dessus.
Quelqu'un peut-il m'aider à ce problème.
OriginalL'auteur Sri Niwash | 2013-10-21
Vous devez vous connecter pour publier un commentaire.
}
c'est mieux d'expliquer au lieu de seulement le code
Je voulais complet de la dernière réponse parce que vous avez un problème de port. Vous devez changer le port par défaut de 465 au lieu de 25. accessoires de jeu.setProperty("mail.smtp.socketFactory.port", "465"); et l'ajout de la socketFactory.
Où en sommes-nous mettre ce code btw?
merci, joyeuses pâques!
OriginalL'auteur Pape Diop
Il est très clair à partir de votre exception, qu'il essaie de se connecter à
localhost
et de ne pas10.101.3.229
exception extrait de :
Could not connect to SMTP host: localhost, port: 25;
1.) Veuillez vérifier s'il y a des null vérifier qui est la création d'localhost en tant que valeur par défaut
2.) Après le redémarrage, si elle fonctionne bien, alors cela signifie que lors de la première exécution, la valeur correcte est été prises à partir des Propriétés et de l'exécution prochaine de la valeur est définie par défaut. Afin de garder la propriété de l'objet en tant que singleton et l'utiliser sur tout l'ensemble de votre projet
OriginalL'auteur Arun
Cela ne devrait pas arriver. Pouvez-vous essayer de faire cela?
Utiliser les propriétés du système et de définir la propriété comme ci-dessous:
Et si vous avez un port associé, puis définir ainsi.
OriginalL'auteur Swaprks
Tentez de définir la propriété lors du démarrage de la JVM, par exemple, ajouter
-Djava.net.preferIPv4Stack=true
.Vous ne pouvez pas le définir lors de l'exécution du code, comme l'java.net juste lue lors de la jvm de départ.
Et sur la cause initiale, le présent article donne un indice: Pourquoi ai-je besoin de java.net.preferIPv4Stack=true uniquement sur certains systèmes windows 7?.
OriginalL'auteur freeman
J'ai également été confronté à la même erreur.
La raison pour cela est qu'il n'y a pas de serveur smtp sur votre environnement. Pour la création d'un faux serveur smtp, j'ai utilisé ce fake-smtp.jar fichier pour créer un serveur virtuel et à l'écoute de toutes les demandes. Si vous êtes confrontés à la même erreur, je vous recommande d'utiliser ce pot et l'exécuter après l'extraction, puis essayez d'exécuter votre application.
Télécharger la dernière version de faux smtp
OriginalL'auteur Ashwani Sharma