2012-03-21 3 views
0

J'ai utilisé le courrier java (com.sun.mail.smtp) depuis mon projet Struts. Le courrier est envoyé avec succès, mais le destinataire met fin au courrier ainsi retardé. Cela prendra 2 ou 3 heures. Lorsque j'utilise PHP mailer avec les mêmes paramètres smtp, il n'y a pas de délai, le courrier fonctionne parfaitement.Java mail getting delay

Toute personne confrontée à ce problème, sachez quelle est la raison?

+0

Avez-vous essayé d'utiliser un profileur pour voir ce qui se passe? –

+0

Comment comparez-vous l'utilisation du mail de PHP ($ address ', $ subject, $ msg); à l'utilisation de javax.mail. * package? Le conteneur PHP définit les options de la passerelle de messagerie et lorsque vous utilisez javax.mail, vous définissez les options de la passerelle. Clarifier. – Java42

Répondre

2

Javamail ne stocke pas et ne transmet pas les messages. Donc, si vous avez réussi à envoyer l'e-mail au serveur de messagerie en appelant Transport.sendMessage() et ne pas recevoir une erreur. Il est assis sur le serveur de messagerie en attente d'être livré. Vous devrez vérifier ce que vous avez défini comme votre serveur SMTP, votre nom d'utilisateur et votre mot de passe. Ce sont ce que vous envoyez à Transport.connect (serveur, nom d'utilisateur, mot de passe). Assurez-vous qu'ils sont les mêmes que ceux que vous utilisez en PHP. Si vous ne les configurez pas en PHP, je parie que vous n'utilisez pas les mêmes paramètres et donc pourquoi un serveur prend plus de temps que l'autre.

Mettez des instructions de synchronisation autour des appels à Transport.connect(), Transport.sendMessage(), Transport.close(). Voyez combien de temps il faut pour traverser cette section. Si cela prend très peu de temps, alors vous savez que l'erreur existe du côté du serveur de messagerie. Et je parie que vous ne parlez pas au serveur auquel vous pensez que vous parlez.