Je travaille avec un ensemble de serveurs de messagerie spécialisés qui sont configurés pour renvoyer les notifications de disposition de message (MDN) à la réception du message. J'ai développé un client Javamail qui est utilisé pour envoyer des messages à l'un de ces serveurs et récupérer les MDN retournés à partir du dossier POP3 INBOX de l'utilisateur.Utilisation de DispositionNotification avec Javamail
Comment puis-je obtenir la partie du corps de notification de disposition à partir du MimeMessage que je récupère dans la boîte de réception de l'utilisateur? J'ai trouvé la classe com.sun.mail.dsn.DispositionNotification mais ne l'ai pas vu un exemple de la façon de créer correctement une instance d'un DispositionNotification utilisant le constructeur:
DispositionNotification(InputStream)
Dois-je pouvoir obtenir le InputStream à partir d'un MimeMessage et l'utiliser pour créer la DispositionNotification, comme ça?
Message[] msgs = getInboxMessages();
DispositionNotification dn = new DispositionNotification(msgs[0].getInputStream();
Ou y a-t-il un autre moyen de le faire?
@Bill_Shannon Cela a été très utile pour me montrer dans la bonne direction. Merci! – user1899331
MultipartReport report = (MultipartReport) msgs [i] .getContent(); if (msgs [i] .getContentType(). Contient ("disposition-notification")) { DispositionNotification dn = (DispositionNotification) report.getReport(); InternetHeaders inetHeaders = dn.getNotifications(); Enumeration headers = inetHeaders.getAllHeaders(); Chaîne msgId = inetHeaders.getHeader ("Original-Message-ID", ";"); Chaîne disp = inetHeaders.getHeader ("Disposition", ";"); } – user1899331