[ 
https://issues.apache.org/jira/browse/GERONIMO-6851?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Dharmraj Gocher updated GERONIMO-6851:
--------------------------------------
    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, 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.
Debug logs-
{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}

  was:
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}


> 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
>            Priority: Critical
>
> 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.
> Debug logs-
> {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)

Reply via email to