Dharmraj Gocher created GERONIMO-6851:
-----------------------------------------
Summary: 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
Key: GERONIMO-6851
URL: https://issues.apache.org/jira/browse/GERONIMO-6851
Project: Geronimo
Issue Type: New Feature
Security Level: public (Regular issues)
Components: general
Reporter: Dharmraj Gocher
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, can't
consume this implementation for rela time usecases.
If any jakarta.mail.internet.MimeBodyPart content type does not contain double
quote in content type e.g
{code:java}
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.
{code}
To support such MimeBodyPart i turn off
{code:java}
-Dmail.mime.parameters.strict=false\{code}
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 scenarios are not working.
Hope I am clear.
{code:java}
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\{code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)