`

Java发送邮件乱码,整了几个小时没解决,教训啊...

阅读更多

      今天的工作,需要用到一个简单发送邮件的功能。由于先前已经封装过一个类,可以直接发送,于是就直接拷过来用,当然相应的包也要拷。

      就这样,配置好了以后开始测试:

  1. 同样的代码,第一次测试就不通过,居然发不出来,没报错 ,想不明白,直接登录邮箱发送没问题...(263.sina邮箱)
  2. 用自己旧163邮箱,测试通过,但标题为空白,内容为乱码。于是Google、Baidu...
  3. 尝试网上说的各种解决乱码的方法,还特意申请了gmail来测试,用了原生的javax.mail包和spring封装的包,发出来还是乱码,标题还是空白。这下,我可真要晕了
  4. 我头都快爆了,越想不通,脑子越乱,还怕经理问到:你今天都干了些什么,难道我回答一直在解决乱码问题?那要被骂一顿,唉...
  5. 直到了今晚,再次看了看原来的代码,测试了,还是有问题。突然想到看看jar包,看看版本,版本是一样的,没问题...
  6. 看的过程中发现两边的包的个数不同,灵机一动,第六感告诉我,应该是有重复的包发生了冲突。于是,找啊找,找啊找,终于找到了两个害虫geronimo-javamail_1.4_spec-1.3.jar、geronimo-activation_1.1_spec-1.0.2.jar。这两个包是原来项目里面就有的,这是以前的同事加的。而我今天加了两个mail.jar、activation.jar,于是问题就来了,也就有了今天浪费了我好几个小时的痛苦经历,唉...

发现 :Gmail、163、qq邮箱都不可以随意更改发送人邮件地址,即setFrom的时候完整邮箱地址必须与前面设置的用户名和smtp服务器对应。而263.sina则可以随意设置发送人邮件地址

 

 

大家要记住教训啊

2
0
分享到:
评论
6 楼 fmghbfn 2011-03-25  
谢啦,今天也碰到了。
5 楼 huan0727 2010-11-02  
楼主,你9了我啊
4 楼 wc0903 2010-07-17  
好 文 章
3 楼 groovyboy 2010-03-04  
这个问题搞了我两天  头都快爆了 收藏了  万分感谢楼主!!
2 楼 linginfanta 2010-01-05  
我也碰到了这个害虫。
geronimo-javamail_1.4_spec
1 楼 yexin218 2009-08-05  
以前我发的时候 主题没有乱码,内容乱码了

相关推荐

Global site tag (gtag.js) - Google Analytics