jerome66 2015-08-20 03:45 采纳率: 46.7%
浏览 2231
已采纳

关于java mail中地址中有中文时报地址错误的问题

使用javaMail发邮件时发现一个问题,若是from中含有中文字符,就会报地址错误.

 com.sun.mail.smtp.SMTPSendFailedException: 501 5.1.7 Syntax error in sender address

    at com.sun.mail.smtp.SMTPTransport.issueSendCommand(SMTPTransport.java:1829)
    at com.sun.mail.smtp.SMTPTransport.mailFrom(SMTPTransport.java:1368)
    at com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:886)
    at javax.mail.Transport.send0(Transport.java:191)
    at javax.mail.Transport.send(Transport.java:120)
    at cn.edu.pdsu.service.mail.send.SendMail.sendMail(SendMail.java:200)
    at cn.edu.pdsu.action.user.UserSendMailAction.sendEmail(UserSendMailAction.java:239)
    at cn.edu.pdsu.action.user.UserSendMailAction$$FastClassByCGLIB$$8c38168.invoke(<generated>)
    at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:191)
    at org.springframework.aop.framework.Cglib2AopProxy$CglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:688)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
    at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:80)
    at cn.edu.pdsu.utils.LogWriter.doBasicProfiling(LogWriter.java:29)
    at sun.reflect.GeneratedMethodAccessor36.invoke(Unknown Source)
  • 写回答

4条回答 默认 最新

  • jerome66 2015-08-24 09:48
    关注

    感谢各位解答,我用了一个取巧的方法,就是前台显示的是全部地址,传到后台时进行分割,只处理部分有效信息,如全部地址是"测试"test@163.com.则后
    台只处理 test@163.com 这个地址,当查看收件箱时,通过 test@163.com来查询对应的中文名,然后字符串进行拼接,这样就避免了解决中文乱码的问题.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!