Handle IMAPInputStream in getMessage pentru a preveni ClassCastException

FixEmailService
Expediere
26 aprilie 2026 la 04:19 UTC
Autor
Kamo
Comite
5616354

JavaMail poate returna un IMAPInputStream în loc de un string decodat de la part.getContent() atunci când conținutul mesajului nu a fost pre-inventat. ă mulaje directe (șir) în parseMultipart () aruncat ClassCastException for mesaje afectate, ceea ce determină aducerea message pentru a eșua înainte de marca-ca-citit a fost numit, astfel încât e-mailuri nu a fost marcat citit în modul clasic. Adăugați o parteContentAsString() ajutor care verifică prima instanță de string, apoi cade înapoi la citirea unui InputStream cu charset partea lui. Adăugați extractCharset() pentru a extrage charset din antet de tip Content. Actualizați parseMultipart() pentru a utiliza ajutorul pentru toate părțile corpului text / *. Adăugați, de asemenea, InputStream ramura la nivelul superior getMessage () parsing corp pentru mesajele monopartite al căror conținut ajunge ca flux brut.

Toate modificările

Ca ceea ce vezi de transport maritim?

Fiecare dintre aceste actualizări aterizează automat în spațiul de lucru. Începe gratuit și urmăriți-l crească săptămână după săptămână.

Pornește gratuit pentru totdeaunaVezi prețurile