Bonjour,

J'essai depuis ce matin (!) de m'envoyer des mails depuis mon application lorsque des erreurs arrivent.

Malheureusement, je m'arrache les cheveux a essayer de changer le port utiliser pour envoyer le message. Voici le fichier properties de mon SMTPAppender :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
#Email config
log4j.appender.mail=org.apache.log4j.net.SMTPAppender
#defines how often emails are send
log4j.appender.mail.BufferSize=1
log4j.appender.mail.SMTPHost=host.bonneadresse
log4j.appender.mail.SMTPPassword=bonpassword
log4j.appender.mail.SMTPUsername=addresse@hsbc.com
log4j.appender.mail.From=addresse@hsbc.com
log4j.appender.mail.To=addresse@mac.com
log4j.appender.mail.Subject=" Application.log error occurred"
log4j.appender.mail.layout=org.apache.log4j.PatternLayout
log4j.appender.mail.layout.ConversionPattern=%d %5p [%c] %n%m%n
Voici l'erreur que je recois :

log4j:ERROR Error occured while sending e-mail notification.
javax.mail.MessagingException: Could not connect to SMTP host: host.bonneadresse, port: 25;
Effectivement, je ne dois pas utiliser le port 25 mais un autre. Cependant je ne vois aucun moyen de le faire comprendre a Log4J.

Alors apres j'ai meme essayer d'envoyer un message directement avec l'Api de JavaMail elle meme, mais la aussi, je me casse la tete pour savoir comment lui indiquer que je veux envoyer sur tel port.

Visiblement mes recherches m'ont menees vers la classe com.sun.mail.smt.SMTPTransport qui a une variable defaultport initialise a 25, avec un constructeur protected qui permettrait de changer cette valeure, ce qui signifierais que je dois avoir une classe dans le meme package pour pouvoir appeler ce constructeur. Donc j'en conclus qu'il y a forcement une autre solution (Et autre que d'extend la classe SMTPTransport elle meme :p)

Merci de m'aider les amis, je voulais utiliser log4j pour ne pas avoir a plonger dans le processus de l'envoi de mail ...

Thanks,

F