le titre dit tout: Comment envoyer un fichier pdf à un e-mail générique de l'application Java?Comment envoyer un pdf via e-mail à partir de Java
Répondre
Vous pouvez envoyer un email avec un fichier PDF en pièce jointe à l'aide de cette référence -
import java.util.*;
import javax.mail.*;
import javax.mail.internet.*;
import javax.activation.*;
class SendMailWithAttachment
{
public static void main(String [] args)
{
String to="[email protected]"; //Email address of the recipient
final String user="[email protected]"; //Email address of sender
final String password="xxxxx"; //Password of the sender's email
//Get the session object
Properties properties = System.getProperties();
//Here pass your smtp server url
properties.setProperty("mail.smtp.host", "mail.javatpoint.com");
properties.put("mail.smtp.auth", "true");
Session session = Session.getDefaultInstance(properties,
new javax.mail.Authenticator() {
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(user,password); } });
//Compose message
try{
MimeMessage message = new MimeMessage(session);
message.setFrom(new InternetAddress(user));
message.addRecipient(Message.RecipientType.TO,new InternetAddress(to));
message.setSubject("Message Aleart");
//Create MimeBodyPart object and set your message text
BodyPart messageBodyPart1 = new MimeBodyPart();
messageBodyPart1.setText("This is message body");
//Create new MimeBodyPart object and set DataHandler object to this object
MimeBodyPart messageBodyPart2 = new MimeBodyPart();
String filename = "YourPDFFileName.pdf";//change accordingly
DataSource source = new FileDataSource(filename);
messageBodyPart2.setDataHandler(new DataHandler(source));
messageBodyPart2.setFileName(filename);
//Create Multipart object and add MimeBodyPart objects to this object
Multipart multipart = new MimeMultipart();
multipart.addBodyPart(messageBodyPart1);
multipart.addBodyPart(messageBodyPart2);
//Set the multiplart object to the message object
message.setContent(multipart);
//Send message
Transport.send(message);
System.out.println("message sent....");
}catch (MessagingException ex) {ex.printStackTrace();}
}
}
Vous pouvez également consulter JavaTPoint
Merci. Mais je reçois cette erreur: com.sun.mail.smtp.SMTPSendFailedException: 550 Accès refusé - nom incorrect HELO (Voir RFC2821 4.1.1.1) \t à com.sun.mail.smtp.SMTPTransport.issueSendCommand (SMTPTransport. java: 1829) \t à com.sun.mail.smtp.SMTPTransport.mailFrom (SMTPTransport.java:1368) \t à com.sun.mail.smtp.SMTPTransport.sendMessage (SMTPTransport.java:886) \t à javax .mail.Transport.send0 (Transport.java:191) \t à javax.mail.Transport.send (Transport.java:120) \t à testemail.SendMailWithAttachment.main (SendMailWithAttachment.java:53) –
@Da niel-san Je pense que vous avez simplement copié le code ci-dessus. J'ai ajouté des commentaires dans ma réponse s'il vous plaît vérifier cela. –
S'il vous plaît modifier votre question pour supprimer toute mention de PDFBox. Votre question est essentiellement comment envoyer un fichier via smtp avec Java. –