JavaMail 读取邮件问题的解决

在JavaMail读取邮件过程中,遇到正文内容显示为'类名@哈希值'的问题,该问题在特定环境下(如Tomcat6.0.14+JDK1.6)出现。错误主要发生在尝试从邮件正文中获取内容的`part.getContent()`方法,原本应根据MimeType正确转换,但在新环境下返回异常字符串。为确保在JDK1.5至1.7间兼容,代码进行了调整以避免依赖环境修改。
摘要由CSDN通过智能技术生成

JavaMail 读取邮件过程中,读取正文内容的时候,返回的是“类名@哈希值”,导致解析的过程出错

**

一、问题重现

问题重现:
这个动作在myeclipse里最开始没有重现,是在服务器上出现的,比对环境后发现问题:
开发环境:myeclipse+内置tomcat+com.sun.java.jdk.win32.x86_64_1.6.0.013
服务器环境:tomcat6.0.14+JDK1.6

将开发环境改为:myeclipse+外置tomcat6.0.41+JDK1.6.0_45
问题重现。

二、报错位置

/** 
* 获得邮件文本内容 
 * @param part 邮件体 
 * @param content 存储邮件文本内容的字符串 
 * @throws MessagingException 
 * @throws IOException 
 */  
public static void getMailTextContent(Part part, StringBuffer content) 
throws MessagingException, IOException {  
        //如果是文本类型的附件,通过getContent方法可以取到文本内容,但这不是我们需要的结果,所以在这里要做判断  
        boolean isContainTextAttach = part.getContentType().indexOf("name") > 0;   
        if (part.isMimeType
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值