eclipse-ee4j / angus-mail

Angus Mail
https://eclipse-ee4j.github.io/angus-mail
Other
53 stars 16 forks source link

Continuation of #107 UnsupportedEncodingException #147

Open davecrighton opened 4 months ago

davecrighton commented 4 months ago

Describe the bug

We have seen the same customer come back with a re-occurrence of #107 but this time using different unsupported code page iso-8859-8-i ( https://en.wikipedia.org/wiki/ISO-8859-8-I )

I think @jmehrens comment in #107 about being more flexible with lookups is likely to be a better solution than adding another mapping, perhaps with the option to specify a fallback code page where the name is not recognized.

We're happy to work on a PR for this but it might take some time to get the contributor agreements signed off our side and we would like guidance on the preferred approach. Specifically when building the suggested table based lookup what is the expected source of charset names?

Would it be acceptable to add something like icu4j as a dependency to help with enumerating charset aliases?

To Reproduce Create a mail with 'Content-Type: text/html; charset="iso-8859-8-i" Invoke getContent() API on the email and it fails.

Expected behavior To process the email even if it uses charset="iso-8859-8-i"

Screenshots If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

Smartphone (please complete the following information):

n/a

Mail server:

Additional context Add any other context about the problem here.

jmehrens commented 4 months ago

This is an old issue from https://github.com/jakartaee/mail-api/issues/302. I think the next steps are to ask openjdk team to provide an evaluation of that openjdk ticket. That will then align the approach for applying a patch here regardless of timelines over at openjdk. There is a lot we can do but I want their input too. I can ask the openjdk team to provide their view.

We can't add icu4j to Angus-mail. We are interested in contributions. You'll have to sign an eclipse agreement. I can answer remaining questions after evaluation of the openjdk ticket.

jmehrens commented 4 months ago

https://bugs.openjdk.org/browse/JDK-8195686

davecrighton commented 4 months ago

Thanks for the response. We actually encountered this on the IBM JRE (although suspect this may be common code in the class library) so we will try engaging internally to see if we can get any response on that linked defect. I'll keep you posted if I manage to get any traction.

jmehrens commented 4 months ago

Awesome! Thanks. Let me know if you want me to engage on the public openjdk list. I'm thinking if they add an alias to openjdk then angus-mail can do the same approach as PR 107. Otherwise, if we keep having this come up we can look at new approach.

psawant19 commented 3 months ago

Hi @jmehrens, have you already contacted the OpenJDK community regarding ticket JDK-8195686? If so, what was the response from community and we’re curious if there’s a specific reason why this ticket remains unresolved until today.

jmehrens commented 3 months ago

Hi @psawant19, the main reason this is unresolved is that I'm continuing the approach that Bill Shannon was taking in the linked ticket. Usually accepted means that there is a comment in the OpenJDK ticket from the team at Oracle that confirms it is a real bug. I didn't contact OpenJDK on this issue yet. My understanding was that @davecrighton was going to address it through other channels. Given the time that has passed I'll engage on the OpenJDK mailing list. Once there is an answer there I can move forward with this ticket. I'll post back on this issue with OpenJDK thread when I open it.

jmehrens commented 1 week ago

@davecrighton https://github.com/openjdk/jdk/pull/20690 has been opened. If you have any comments then add them to that PR.