E-Mails versenden

Status
Nicht offen für weitere Antworten.
G

Gerhard

Gast
Hallo!

Habe folgendes Problem:

Ich möchte gerne ein Programm schreiben, welches (ähnlich wie Outlook) meine E-mails von einem Exchange Server abruft und verschickt. Bin gerade dabei das Verschicken zu testen. Habe dazu mal das Forum durchsucht und bin darauf gestoßen, dass man einen exchange server wie einen smtp-server behandeln soll (?). hier mal mein code:

Code:
import java.util.*;
import javax.mail.*;
import javax.mail.internet.*;


public class Main
{
  public static void postMail( String recipient,
                               String subject,
                               String message, String from )
    throws MessagingException
  {
    Properties props = new Properties();
    props.put( "mail.smtp.host", "mail.java-tutor.com" );
    Session session = Session.getDefaultInstance( props );
    Message msg = new MimeMessage( session );
    InternetAddress addressFrom = new InternetAddress( from );
    msg.setFrom( addressFrom );
    InternetAddress addressTo = new InternetAddress( recipient );
    msg.setRecipient( Message.RecipientType.TO, addressTo );
    msg.setSubject( subject );
    msg.setContent( message, "text/plain" );
    Transport.send( msg );
  }
  public static void main( String[] args ) throws Exception
  {
    postMail( "gerhard.schrittesser@bbstveit.at",
              "test",
              "test geklappt",
              "gerhard.schrittesser@bbstveit.at");
  }
}

so. was muss ich jetzt aber anstelle von mail.smtp.host und mail.java-tutor.com schreiben?? oder funkt. das mit java und einem exchange server nicht??

vielen dank schon mal!!
liebe grüße
gerhard
 

motschow

Aktives Mitglied
der code is aus Java ist auch eine Insel dort werden auch die benötigten Vorbereitungen beschrieben. für mail.java-tutor.com müsste dann wahrscheinleich dein smtp-Server rein.
Grüße, motschow

edit: oh, stimmt ja, du brauchst nen exchange-server. aber versuch halt einfach mal die adresse von dem da rein zuschreiben
 
G

Gerhard

Gast
hallo!!

danke einmal für die antworten. ja ist richtig der code ist aus java ist auch eine insel. das hat meine suche ja ergeben. bin ja erst am testen. und der exchange server hat folgende adresse: rzsmail01.bbaustria.at. würde dann heißen ich schreibe folgendes:

Code:
props.put( "mail.smtp.host", "rzsmail01.bbaustria.at" );

und anstelle von mail.smtp.host? ich hab das buch leider nicht. deswegen kann ich das auch nicht nachlesen :oops:

hoffe ihr könnt mir weiterhelfen!!!

VIELEN DANK SCHONMAL!!!

lg
gerhard
 
G

Gerhard

Gast
hab mich jetzt mal da durchglesen! Danke für den Link.
Allerdings konnte ich trotzdem nicht daraus schlau werden da ja das ganze auf smtp aufgebaut ist.
vielleicht kann mir ja jemand auf meine oben gestellte frage eine antwort geben, was ich da anstelle von "mail.smtp.host" eintragen soll.

weiters würd mich interessieren wie das mit der anmeldung am konto läuft?! dann bei uns melden wir uns am exchange server mit dem active directory konto an!?

vielleicht kennt von euch ja wer einen link wo die verbindung mittels java auf einen exchange server beschrieben ist?!

wäre super!!!

VIELEN LIEBEN DANK!!!!

mfg gerhard
 

motschow

Aktives Mitglied
Verbessert mich, wenn ich was Falsches sage, aber Exchange (MS Exchange server?) is doch eigendlich nur ein Mailserver während die E-Mails ja weitehin über das SMTP-Protokoll verschickt werden. Das heißt man muss da auch mail.smtp.host verwenden.
 

robertpic71

Bekanntes Mitglied
motschow hat gesagt.:
Verbessert mich, wenn ich was Falsches sage, aber Exchange (MS Exchange server?) is doch eigendlich nur ein Mailserver während die E-Mails ja weitehin über das SMTP-Protokoll verschickt werden. Das heißt man muss da auch mail.smtp.host verwenden.

100% korrekt

@Gerhard
Am besten du sieht bei deinem e-Mail-Client nach, was dort als SMTP-Server eingetragen ist. Bei Outlook findet man diese Einstellung unter: Extras/Konten/Eigenschaften/Server/Ausgangsserver-SMTP

Nimm den Namen des Postausgangsservers und setze diesen, in dein Programm ein.

Normalerweise sollte das reichen, außer Exchange will auch eine Anmeldung. Dann müsste bei den Eigenschaften das "Postaugsgangsserver erfordert Authentifizierung" angekreuzt sein. Wenn das so ist: schreib noch einmal.

Robert
 

robertpic71

Bekanntes Mitglied
millin�r hat gesagt.:
aber normalerweise brauch man doch ein passwort wie macht man dass dann?

Da behaupte ich einmal das Gegenteil: Für das Senden von e-Mails, brauchen die meisten SMTP-Server keine Anmeldung. Das Passwort braucht man nur für das Abrufen der e-Mails via POP3 oder IMAP.

Aber wenn du schon fragst, die Sun-Mail-API bietet mehrer Möglichkeiten an, hier eine:

Nach props.put( "mail.smtp.host", "mail.java-tutor.com" );
Code:
String protocol = "smtp";
props.put("mail." + protocol + ".auth", "true");

einf�gen, und die Zeile:

Code:
Transport.send(msg);

mit

Code:
Transport t = session.getTransport(protocol);
try {
     t.connect(username, password);
     t.sendMessage(msg, msg.getAllRecipients());
} finally {
     t.close();
}

ersetzen.

Weiterführende Infos gibt es noch in der Sun Mail FAQ.
 

DP

Top Contributor
robertpic71 hat gesagt.:
Da behaupte ich einmal das Gegenteil: Für das Senden von e-Mails, brauchen die meisten SMTP-Server keine Anmeldung. Das Passwort braucht man nur für das Abrufen der e-Mails via POP3 oder IMAP.

wo stehen denn solch weisheiten geschrieben?

smtp after pop funktioniert nur wenn man sich vorher per pop sich authentifiziert hat.

ansonsten *muss* eine authentifizierung via smtp auth ablaufen, wenn es kein open relay ist.
 

robertpic71

Bekanntes Mitglied
DP hat gesagt.:
robertpic71 hat gesagt.:
Da behaupte ich einmal das Gegenteil: Für das Senden von e-Mails, brauchen die meisten SMTP-Server keine Anmeldung....

wo stehen denn solch weisheiten geschrieben?

smtp after pop funktioniert nur wenn man sich vorher per pop sich authentifiziert hat.

ansonsten *muss* eine authentifizierung via smtp auth ablaufen, wenn es kein open relay ist.

>> wo stehen denn solch weisheiten geschrieben?
Das steht nirgends geschrieben - das sind meine Erfahrungen aus dem Arbeitsalltag. Aber stimmt schon, die Behauptung von oben ist so nicht ganz richtig, deshalb:

Für das Senden von e-Mails, brauchen die meisten SMTP-Server keine Anmeldung - wenn man aus dem Netzwerk des Providers sendet. Das betrifft jetzt die ganzen firmeninternen STMP-Server als auch die SMTP-Dienste der Internetprovider.

Da die Webmail-Anbieter (sowie gmx) kein eigenes Netzwerk haben benötigen diese immer eine Anmeldung.

Da meine EDIFACT-Workflow-Lösung im Firmenumfeld eingesetzt wird, stimmt mein Meistens also nicht unbedingt für die Allgemeinheit.. :oops:
 

DP

Top Contributor
jau, dann ist ja alles bello.

die ganzen internen clients werden im mailserver selbst über die ip zum senden authorisiert.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
T Automatisch Mails versenden Allgemeine Java-Themen 4
D kein Versand von Mails mit Anhang mehr Allgemeine Java-Themen 2
B Mails testen Allgemeine Java-Themen 7
S Zeichensatz im Betreff von Mails Allgemeine Java-Themen 7
Mike90 Attachments von Mails downloaden Allgemeine Java-Themen 3
André Uhres Welches Werzkeug benutzt ihr um eure Mails zu lesen? Allgemeine Java-Themen 47
J E-Mails verschicken Allgemeine Java-Themen 33
G Mail Konten (E-Mails holen) Allgemeine Java-Themen 5
S Ungelesene Mails mit Java Mail abholen Allgemeine Java-Themen 3
K Mails verschicken ohne SMTP-Server Allgemeine Java-Themen 18
S Verschlüsselte Mails entschlüsseln! Allgemeine Java-Themen 2
D mails auch als fax verschicken ? ? ? Allgemeine Java-Themen 2
G Mails aus TimerTask Allgemeine Java-Themen 6
G mit Java Mails verschicken Allgemeine Java-Themen 7
L Unterschiedliche mails (Daten aus JTable) schicken Allgemeine Java-Themen 14
R Java Mail Abrufen von Mails Allgemeine Java-Themen 2
P E-Mails mittels POP3 abrufen Allgemeine Java-Themen 2
S mails senden? Allgemeine Java-Themen 2
d.lumpi JDA eclipse dateien versenden Allgemeine Java-Themen 4
R Compiler-Fehler Bild per E-Mail versenden Allgemeine Java-Themen 3
X Mail versenden mit java.mail Allgemeine Java-Themen 14
T Email versenden Allgemeine Java-Themen 1
KaffeeFan EMails versenden in Java Allgemeine Java-Themen 18
P "Email" versenden mit Anhang Allgemeine Java-Themen 5
P MimeMessage SMS versenden Allgemeine Java-Themen 0
C SMS versenden Allgemeine Java-Themen 7
A Email versenden mehrere Zeilen Allgemeine Java-Themen 10
B Per BatchScript Mail versenden Allgemeine Java-Themen 27
foobar Email mit Standard Mailclient versenden Allgemeine Java-Themen 12
C .hex Datei über RS232 versenden Allgemeine Java-Themen 3
G E-Mail versenden Allgemeine Java-Themen 6
D Email an mehrer Absender versenden Allgemeine Java-Themen 3
D Mit Java Daten aus Access holen und als VCard versenden Allgemeine Java-Themen 3
B Image(png) versenden Allgemeine Java-Themen 3
T ObjectOutputStream => Socket versenden Allgemeine Java-Themen 2
T Automatische Emails versenden mit Java? Allgemeine Java-Themen 5
K Email mit Anhang über mailto:. versenden Allgemeine Java-Themen 11
P Streams per Mail mit JavaMailAPI versenden Allgemeine Java-Themen 3
S java mail API, email versenden Allgemeine Java-Themen 8

Ähnliche Java Themen

Neue Themen


Oben