I had a similar problem in HTML emails: mysterious missing periods, and in one case a weird truncated message. JavaMail sends an HTML email address using an encoded quote that wraps strings anywhere (that is, not just spaces), so that no strings contain 76 characters. (It uses the '=' at the end of the line as a soft carriage return, so the receiver can collect lines.) This can easily lead to the beginning of a line that should be doubled. (This is called “spot padding”). If not, the period will be eaten by the receiving SMTP server or, even worse, if the period is the only character in the string, it will be interpreted by the SMTP server as the end of the message.
I tracked it to GNU JavaMail 1.1.2 implementation (aka classpa thanks javamail). There is no new version of this implementation, and it has not been updated for 4 or 5 years. Looking at the source, it partially implements dot-stamping - it tries to process the period in the line by itself, but there is an error that prevents even this business from working.
Unfortunately, this was the default implementation on our platform (Centos 5), so I believe this is also the default value for RedHat.
The fix on Centos is to install Sun (or should I say Oracle now?) The JavaMail implementation (I used 1.4.4) and use the Centos alternatives command to install it instead of the default implementation. (Using alternatives ensures that installing Centos patches does not lead to a return to GNU implementation.)
mclase
source share