Hallo Leutz,
ich hab eine Frage zu JavaMail und dem versenden von Dateien. Wenn ich ein PDF im Anhang per eMail versende, kann ich nach dem Empfang der eMail die Datei nicht mehr öffnen. Ich habe es auch mit einem Word-Dokument ausprobiert, da funktioniert (mal zur Abwechslung) alles prima. Kann mir jemand erklären, woran das liegt?
Ich hab hier mal den Code-Schnippsel wo ich den Anhang bastel:
Also ich kann mir nicht vorstellen, dass es am Code liegt, da es ja mit anderen Dokumenten klappt. Oder muss ich vielleicht noch irgendeinen Paramter setzen? Ich bin ratlos und leider findet man zu dem Problem nichts.
Danke für eure Zeit!
ich hab eine Frage zu JavaMail und dem versenden von Dateien. Wenn ich ein PDF im Anhang per eMail versende, kann ich nach dem Empfang der eMail die Datei nicht mehr öffnen. Ich habe es auch mit einem Word-Dokument ausprobiert, da funktioniert (mal zur Abwechslung) alles prima. Kann mir jemand erklären, woran das liegt?
Ich hab hier mal den Code-Schnippsel wo ich den Anhang bastel:
Code:
// Mitteilung/Anhang der Mail konstruieren
Multipart lMultipartBody = null;
lMultipartBody = new MimeMultipart();
BodyPart lBodyPart = new MimeBodyPart();
try {
lBodyPart.setText(pMessage);
lMultipartBody.addBodyPart(lBodyPart);
if (pAttachment != null) {
lBodyPart = new MimeBodyPart();
DataSource lAttachment = new FileDataSource(pAttachment.getAbsolutePath());
lBodyPart.setDataHandler(new DataHandler(lAttachment));
lBodyPart.setFileName(pAttachment.getName());
lMultipartBody.addBodyPart(lBodyPart);
}
} catch (MessagingException pException) {
mLogger.info(
"The mail could not be sent because mail body could not be constructed." +
"\n\tCauses by: " + pException.getMessage());
throw new MyRuntimeException(
UUID.fromString("cd11d473-0400-4387-b5df-4427dabfa766"),
"The mail could not be sent because mail body could not be constructed" +
"\n\tCauses by: " + pException.getMessage(),
pException);
}
// Message-Objekt erstellen, ueber das die Nachricht konfiguriert wird
MimeMessage lMessage = new MimeMessage(lSession);
try {
lMessage.setFrom(lSender);
lMessage.setRecipient(Message.RecipientType.TO, lRecipient);
lMessage.setSubject(pSubject);
lMessage.setContent(lMultipartBody);
} catch (MessagingException pException) {
mLogger.info(
"The mail could not be sent because mail could not be constructed." +
"\n\tCauses by: " + pException.getMessage());
throw new MyRuntimeException(
UUID.fromString("464db4de-3563-47e5-b45a-76272612206e"),
"The mail could not be sent because mail could not be constructed." +
"\n\tCauses by: " + pException.getMessage(),
pException);
}
Also ich kann mir nicht vorstellen, dass es am Code liegt, da es ja mit anderen Dokumenten klappt. Oder muss ich vielleicht noch irgendeinen Paramter setzen? Ich bin ratlos und leider findet man zu dem Problem nichts.
Danke für eure Zeit!