Uploaded image for project: 'James Mime4j'
  1. James Mime4j
  2. MIME4J-218

Content-Type Fallback Character Set

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 0.7.2
    • 0.8.0
    • None
    • None

    Description

      Would it be possible to add a feature that would allow for specifying a fallback character set to use when the character set in a 'Content-Type' header is not recognized by Java? In the old 0.6.2 version, that we used before, the character set 'ISO-8859-1' was used as a fallback but in the 0.7.2 version an UnsupportedEncodingException is thrown when the parser encounters an unknown character set in a Content-Type header.

      Here is the relevant part of the exception stack trace:

      Caused by: java.io.UnsupportedEncodingException: x-user-defined
      at sun.nio.cs.StreamDecoder.forInputStreamReader(StreamDecoder.java:52)
      at java.io.InputStreamReader.<init>(InputStreamReader.java:83)
      at org.apache.james.mime4j.message.BasicTextBody.getReader(BasicTextBody.java:49)

      We receive, parse and archive a vast number of confidential e-mail messages (for which we use Mime4J) and every now and then we get an e-mail message that contains a non-standard character encoding name (in this case 'x-user-defined'). With the old (0.6) Mime4J version we were still able to parse and read most of those e-mail messages because of the fallback character set in the parser.

      I can unfortunately not post the entire message here but the content-type header that caused the above exception looks like this:

      Content-Type: text/plain; charset="x-user-defined"

      Attachments

        Activity

          People

            Unassigned Unassigned
            rekeroth Rickard Ekeroth
            Votes:
            1 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: