Avatar billede javatosse Nybegynder
09. marts 2006 - 22:28 Der er 5 kommentarer og
1 løsning

Problem med JavaMail når der sendes til en Hotmail-konto

Jeg benytter mig af arne_v's eksempler om JavaMail fra hans artikel, men jeg har problemer når jeg vil sende til en hotmail-konto. Mailen bliver afsendt uden problemer men den dukker aldrig op i hotmail-kontoens inbox.

Der er ikke problemer når jeg bruger det simple eksempel med ren tekst:

public static void send(String to, String subj, String body) {       
    try
    {
      Properties props = System.getProperties();           
      props.put("mail.smtp.host", SMTP_SERVER);           
      Session session = Session.getDefaultInstance(props, null);
      MimeMessage message = new MimeMessage(session);
      message.setFrom(new InternetAddress(FROM));           
      message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));
      message.setSubject(subj);
      message.setText(body);
      Transport.send(message);
    }
    catch (Exception e)
    {
        e.printStackTrace();
    }
}


Problemet opstår bl.a. når jeg vil benytte dansk tegnsæt:

public static void send(String to, String subj, String body) {       
    try
    {
      Properties props = System.getProperties();           
      props.put("mail.smtp.host", SMTP_SERVER);           
      Session session = Session.getDefaultInstance(props, null);
      MimeMessage message = new MimeMessage(session);
      message.setFrom(new InternetAddress(FROM));           
      message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));
      message.setSubject(subj, "ISO-8859-1");
      message.setText(body, "ISO-8859-1");
      Transport.send(message);
    }
    catch (Exception e)
    {
        e.printStackTrace();
    }
}


Problemet opstår også når jeg dropper det danske tegnsæt, men istedet vil sende mailen som HTML-dokument:

public static void send(String to, String subj, String body) {       
    try
    {
      Properties props = System.getProperties();           
      props.put("mail.smtp.host", SMTP_SERVER);           
      Session session = Session.getDefaultInstance(props, null);
      MimeMessage message = new MimeMessage(session);
      message.setFrom(new InternetAddress(FROM));           
      message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));
      message.setSubject(subj);
      message.setContent(body, "text/html");
      Transport.send(message);
    }
    catch (Exception e)
    {
        e.printStackTrace();
    }
}


Er der nogen der kan hjælpe mig med at løse problemet?

- Jesper
Avatar billede arne_v Ekspert
09. marts 2006 - 22:35 #1
Ingen bounce email til FROM adressen ?

Umiddelbart lyder det som et lidt for agressivt spam filter !
Avatar billede javatosse Nybegynder
09. marts 2006 - 22:39 #2
nej ingen email til FROM adressen om at mailen ikke kan afsendes
Avatar billede javatosse Nybegynder
09. marts 2006 - 22:43 #3
jeg har tidligere benyttet mig af mailprogrammet WorldCast http://www.fairlogic.com/worldcast/index.shtml til at sende HTML-emails med og det har ikke nogen problemer med at få sine mails igennem til en hotmail-konto
Avatar billede javatosse Nybegynder
10. marts 2006 - 01:08 #4
Du har ret i at det er Hotmails spam filter der sorterer mailen fra.
Hvis jeg bruger setSender() istedet for setFrom() bliver mailen ikke fanget af spamfiltret, men dette betyder samtidig at jeg ikke har mulighed for at lave et personligt afsendernavn istedet for afsender-adressen - f.eks. message.setFrom(new InternetAddress(FROM, "MIT NAVN"). Hvis setFrom() bliver undladt sætter den nemlig denne automatisk i headeren som værende afsenderadressen.
Avatar billede javatosse Nybegynder
10. marts 2006 - 01:31 #5
jeg har nu selv fundet årsagen til problemet. Hvis Hotmails spamfilter står på det midterste niveau skal et html-dokument have en header der indeholder <META http-equiv=Content-Type content="text/html; charset=windows-1252"> for at mailen slipper igennem
Avatar billede javatosse Nybegynder
10. marts 2006 - 01:38 #6
jeg har nu selv fundet årsagen til problemet. Hvis Hotmails spamfilter står på det midterste niveau skal et html-dokument have en header der indeholder <META http-equiv=Content-Type content="text/html; charset=windows-1252"> for at mailen slipper igennem
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester