Uploaded image for project: 'TomEE'
  1. TomEE
  2. TOMEE-4240

The implementation for mail.mime.parameters.strict parameter is missing in jakarta\mail\internet\ParameterList.java class of geronimo-mail_2.1_spec-1.0.0-M1.jar in TomEE 9.1.0

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 9.1.0
    • None
    • TomEE Core Server
    • None

    Description

      As per the TomEE 9.1 documentation https://jakarta.ee/specifications/platform/9.1/apidocs/jakarta/mail/internet/package-summary.html

      There is mail.mime.parameters.strict Jakarta Mail implementation System properties to control Content-Type and Content-Disposition  to contain whitespace and other special characters without being quoted.

       

      mail.mime.parameters.strict boolean If set to false, when reading a message, parameter values in header fields such as Content-Type and Content-Disposition are allowed to contain whitespace and other special characters without being quoted; the parameter value ends at the next semicolon. If set to true (the default), parameter values are required to conform to the MIME specification and must be quoted if they contain whitespace or special characters.

      But there is no implementation for mail.mime.parameters.strict inside in jakarta\mail\internet\ParameterList.java class of geronimo-mail_2.1_spec-1.0.0-M1-src.jar in TomEE 9.1.0. Due to this, the backward compatibility from TomEE 8 to TOMEE 9.1.0 is broken.

      If any jakarta.mail.internet.MimeBodyPart content type does not contain double quote in content type e.g

      jakarta.mail.internet.MimeBodyPart part = <some part assignement>
      part.getContentType()
      (java.lang.String) multipart/related; type=text/html; boundary=MErelboundary-32775405-3-1674841212
      See above coming like type=text/html; not like type="text/html";
      So if i use part.isMimeType("text/plain") this is failing.
      

       

       

      To support such MimeBodyPart i turn off 

      -Dmail.mime.parameters.strict=false

       in tomee java option but no effect happened.

      When checking the code of jakarta\mail\internet\ParameterList.java class of geronimo-mail_2.1_spec-1.0.0-M1-src.jar in TomEE 9.1.0, i do not see this parameter.

      Due to this many email customers are complaining as many of thier hotmal/fax mail are not working.
      Hope I am clear.

      part.isMimeType("text/plain")
      Error trace-
      Caused by: jakarta.mail.internet.ParseException: Missing ';'
      at jakarta.mail.internet.ParameterList.<init>(ParameterList.java:204)
      at jakarta.mail.internet.ContentType.<init>(ContentType.java:73)
      at jakarta.mail.internet.MimeBodyPart.isMimeType(MimeBodyPart.java:163

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              dgocher Dharmraj Gocher
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated: