Mandulation IMAPInputStream dans getMessage pour empêcher ClassCastException

FixEmailService
Expédié
26 avril 2026 à 04:19 UTC
Auteur
Kamo
Commite
5616354

JavaMail peut renvoyer une IMAPInputStream au lieu d'une chaîne décodé à partir de partie.getContent() lorsque le contenu du message n'a pas été pré-comblé. Le les moulées directes (étriantes) dans l'analyseMultipart() ont jeté ClassCastException pour messages affectés, provoquant l'échec de l'actionnement de FullMessage avant le marquage en lecture a été appelé, donc les e-mails n'ont jamais été marqués en mode classique. Ajouter un assistant de partContentAsString() qui vérifie d'abord l'instance de String, puis retombe à la lecture d'un InputStream avec le charset de la partie. Ajouter extractCharset() à l'analyse charset de l'ensimage de contenu. Mettre à jour parseMultipart() pour utiliser l'assistant pour toutes les parties du texte/- du corps. Ajouter également la branche d'entréeStream à l'analyse corporelle getMessage() de haut niveau pour les messages en une seule partie dont le contenu arrive en flux brut.

Tous les changements

Comme ce que tu vois expédier ?

Chacune de ces mises à jour atterrit automatiquement dans votre espace de travail. Commencez gratuitement et regardez-le grandir semaine après semaine.

Commencez gratuitement pour toujoursPrix de visualisation