我在
中发现了同样的错误https://forums.oracle.com/thread/2449918
根据答案,电子邮件是错误的。我的问题是,对于如何处理这个问题有什么想法吗? 如问题所述,如果我尝试发送:
内容类型:text / rfc822-headers;
内容传输编码:8位
而不是
Content-Type:text / rfc822-headers;内容传输编码:8位
它会起作用。
通过使用属性mail.mime.contenttypehandler,我可以添加自己的类来清理Content-Type标头,但它可能有风险,因为完整的验证,正则表达式等可能会带来比解决更多的问题。 以前有人遇到过这个问题吗?它会怎么样?
任何想法都会被贬低。
答案 0 :(得分:1)
根据documentation,问题是Content-Type参数结构,ti应为:
Content-Type: text/rfc822-headers; Content-Transfer-Encoding= 8bit
我刚刚创建了一个类来修复它,但我认为必须有一些更好的解决方案。 如果有人发现,请继续回答! :)
由于
public static String cleanContentType(String contentType){
StringBuilder cleanedContentType = new StringBuilder();
if(contentType.contains(";")){ //It contains paramenter
cleanedContentType.append(contentType.split(";")[0]).append("; ");
if(contentType.split(";").length > 1){
for(int i = 1; i < contentType.split(";").length ; i++){
cleanedContentType.append(contentType.split(";")[i].replace(":", "=")).append("; ");
}
}
} else{
return contentType;
}
return cleanedContentType.toString();
}