Javamail

Status
Nicht offen für weitere Antworten.

Fragender

Bekanntes Mitglied
ich habe jetzt schon sehr lange im Internet nach beispielen oder Hilfen gesucht und habe jetzt folgendes Programm

Code:
import java.io.File;
import javax.mail.*;
import javax.mail.internet.*;
import javax.swing.JOptionPane;
import javax.activation.*;

public class Mail{

public Mail(){
	 run();}

public void run()
{
// EMail-versenden.
try
{
// Properties holen
java.util.Properties properties = System.getProperties();

// SMTP-Server festlegen
properties.put("mail.smtp.host", "mail.gmx.net");
properties.put("User", "Test@gmx.de");
properties.put("Password", "PaSsWoRt");
properties.put("mail.from", "Test@gmx.de");

// Session anlegen
Session session = Session.getInstance(properties, null);

// Message anlegen
MimeMessage message = new MimeMessage(session);



// Empfaenger setzen
message.addRecipient(Message.RecipientType.TO,
new InternetAddress("beispiel@gmail.com"));

// Betreff setzen
message.setSubject("Test");

message.setText("text");

MimeMultipart content = new MimeMultipart( "alternative" );
MimeBodyPart text = new MimeBodyPart();
MimeBodyPart file = new MimeBodyPart();

text.setText ( "Text" );
text.setHeader( "MIME-Version" , "1.0" );
text.setHeader( "Content-Type" , text.getContentType() );

File f = new File("C:\\Users\\Name\\Desktop\\Test.txt");
if (f.exists()){
System.out.println("Kann Datei lesen.");}
else{
	System.out.println("Fehler beim Lesen");
}


DataSource fileDataSource = new FileDataSource( f );
file.setDataHandler( new DataHandler(fileDataSource) );
file.setFileName( "Test.txt" ); // gibt dem Anhang einen Namen

file.setHeader( "MIME-Version" , "1.0" );
file.setHeader( "Content-Type" , file.getContentType() );

content.addBodyPart( text );
content.addBodyPart( file );

message.setContent( content );
message.setHeader( "MIME-Version" , "1.0" );
message.setHeader( "Content-Type" , content.getContentType() );

// Message senden
Transport.send(message);
System.out.println
("Mail wurde gesendet");
}
catch(Exception e)
{
JOptionPane.showMessageDialog(null,"Fehler");
}
}}

Jedoch beim starten des Programmes wird keine Mail versendet und ich erhalte keine Meldungen in eclipse (System.out.println) oder JOptionPane...

woran liegt das?

danke im Voraus
 
S

SlaterB

Gast
was verstehst du unter 'Starten des Programmes'?
muss man ganz grundlegend mit der Frage nach Vorhandensein einer main-Methode beginnen?

oder läuft das Programm normal durch, erscheint die Nachricht "Mail wurde gesendet"?
erscheint "Hello World", wenn System.out.println("Hello World"); als aller erstes in der main-Methode steht?

lasse Dateianhänge beim ersten Versuch erstmal weg..
 

Fragender

Bekanntes Mitglied
ah danke daran lags(die Klasse wurde im Hauptprogramm nicht richtig aufgerufen)
jedoch kommt jetzt beim senden "Fehler".

iregendetwas klappt nicht:-(
 

SvenK

Aktives Mitglied
Das Senden der Mail, wie du es vorgesehen hast, kann so garnicht funtkionieren, da der Mail-Transport noch gar keine Verbindung zum Server aufgebaut hat.

Versuch folgendes
[highlight=Java]
Transport tr = session.getTransport("smtp");
tr.connect("<SMTP:Benutzer>", "<SMTP-Passwort>");
message.saveChanges();
tr.sendMessage(message, message.getAllRecipients());
tr.close();
[/highlight]

Man kann in den Properties zwar "mail.smtp.user" setzen, aber das Passwort wird immer erst beim Verbinden zum Server angegeben.

Nützlich hierbei ist die API-Dokumentation
JavaMail API documentation (ganz unten führen Links zu Details für Pop3, SMTP und IMAP)
 
Zuletzt bearbeitet:

Fragender

Bekanntes Mitglied
nur noch ein problem mit folgendem Programm
Code:
import java.io.File;
import java.util.Date;
import java.util.Properties;
import javax.mail.*;
import javax.mail.internet.*;
import javax.swing.JOptionPane;
import javax.activation.*;

import com.sun.mail.smtp.SMTPSSLTransport;

public class Mail 
{
public Mail() throws Exception
{
	  Session session = Session.getDefaultInstance(new Properties());
      Transport transport  = new SMTPSSLTransport(session, new URLName("smtp","mail.gmx.net", 465, null,"bsp@gmx.de","Passwort"));

      MimeMultipart content = new MimeMultipart( "alternative" );
      MimeBodyPart text = new MimeBodyPart();
      MimeBodyPart html = new MimeBodyPart();
      text.setText( "Text als normaler String" );
      text.setHeader( "MIME-Version" , "1.0" );
      text.setHeader( "Content-Type" , text.getContentType() );
      html.setContent( "<html>Text als <b>HTML</b></html>", "text/html");
      html.setHeader( "MIME-Version" , "1.0" );
      html.setHeader( "Content-Type" , html.getContentType() );
      content.addBodyPart( text );
      content.addBodyPart( html );
      
      Message message = new MimeMessage(session);
      message.setContent( content );
      message.setSubject("WICHTIG!!!");
      
      message.addRecipient(Message.RecipientType.TO,new InternetAddress("bsp@gmail.com"));
      message.setFrom(new InternetAddress("bsp@gmx.de"));

      DataSource fileDataSource = new FileDataSource( "C:\\Users\\useri\\Desktop\\Brief.doc" );
      BodyPart messageBodyPart = new MimeBodyPart(); 
      messageBodyPart.setDataHandler( new DataHandler(fileDataSource) ); 
      messageBodyPart.setFileName( "dateiname" );     
      content.addBodyPart( messageBodyPart );
      
      transport.connect();
      transport.sendMessage(message, message.getAllRecipients());
      transport.close();
      System.out.println("Erfolg");}
}

Dieses Programm versendet nur ".txt" dateien
woran liegt das
grüße
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
E Javamail Gesendet ordner Java Basics - Anfänger-Themen 1
M Javamail installieren Java Basics - Anfänger-Themen 2
C JavaMail funktioniert nicht immer Java Basics - Anfänger-Themen 8
M javamail android app Java Basics - Anfänger-Themen 3
S JavaMail API E-Mail versenden Probleme Java Basics - Anfänger-Themen 5
B Problem beim Email versenden mit Javamail Java Basics - Anfänger-Themen 5
L JavaMail und mehrere Anhänge Java Basics - Anfänger-Themen 4
D Javamail - Absender-Namen einfügen? Java Basics - Anfänger-Themen 2
M Javamail - AOL-IMAP-Postfach abholen Java Basics - Anfänger-Themen 8
A JavaMail liefert Datenmüll Java Basics - Anfänger-Themen 5
G JavaMail: Unrecognized SSL message, plaintext connection? Java Basics - Anfänger-Themen 3
H JavaMail: Beim Versenden tritt ein Fehler auf! Java Basics - Anfänger-Themen 4
G JavaMail Java Basics - Anfänger-Themen 2
G LIstener bei JavaMail Java Basics - Anfänger-Themen 2
M javamail: versch. Postfächer auslesen Java Basics - Anfänger-Themen 6
D JavaMail Java Basics - Anfänger-Themen 4
M javamail: HTML-Tags aus content eliminieren Java Basics - Anfänger-Themen 2
M Javamail mit Eclipse? Java Basics - Anfänger-Themen 2
M Javamail: Mail als separate Datei speichern? Java Basics - Anfänger-Themen 6
M Javamail: Datumsformat - Frage Java Basics - Anfänger-Themen 2
M Javamail - Anhang speichern Java Basics - Anfänger-Themen 2
G Problem mit javamail Java Basics - Anfänger-Themen 3
G JavaMail funzt nur mit Adressen die ich vorher abgerufen hab Java Basics - Anfänger-Themen 3
H JavaMail Java Basics - Anfänger-Themen 5
D JavaMail Java Basics - Anfänger-Themen 9
P JavaMail API installieren Java Basics - Anfänger-Themen 4
L JavaMail-Fehler: "Helo command rejected" Java Basics - Anfänger-Themen 5
L JavaMail: javax.mail wird nicht gefunden Java Basics - Anfänger-Themen 2
F JavaMail Java Basics - Anfänger-Themen 2
A Anhänge mit Javamail Java Basics - Anfänger-Themen 8

Ähnliche Java Themen

Neue Themen


Oben