求救, 学习 java EE , 想实现 发送邮件 验证的功能, 出了问题,
百度试过的方法: 设置 字符集,我有过滤器,统一设置为:utf-8
还有 在 jre/ 下面 加入 jar 包, 也不行,
谢谢, 快要 评审了
代码 是在 HtmlEmail email = new HtmlEmail(); 这一行 报错的
public void sendEmail(String usersEmail, String usersName) throws EmailException{
HtmlEmail email = new HtmlEmail();
//发送主机的服务器地址
email.setHostName("mail.qq.com");
//用户名、密码
email.setAuthentication("589@qq.com", "*********");
//设置 收件人 邮箱
email.addTo(usersEmail);
//设置 发件人邮箱
email.setFrom("589@qq.com");
email.setCharset("UTF-8");
//邮件 主题
email.setSubject("验证邮件");
//邮件正文
StringBuffer msg = new StringBuffer();
msg.append("<html><body>");
msg.append("<a>http://localhost:8080/JavaEE/AddUsersServlet");
msg.append("?"+usersName+"</a>");
msg.append("</body></html>");
email.setHtmlMsg(msg.toString());
//发送 邮件
email.send();
}
这是 sevlet 的代码, 调用,直接走到 第一句话的时候就报错了,
email.sendEmail(usersEmail, usersName);
System.out.println("邮件已发送至:"+usersEmail);
System.out.println("用户名为:"+usersName);
报错信息:
严重: Servlet.service() for servlet [AddUsersServlet] in context with path [/JavaEE-YiLeTuanGou] threw exception [Servlet execution threw an exception] with root cause
java.lang.ClassNotFoundException: javax.mail.internet.AddressException
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at com.chinasofti.yiletuangou.utils.SendEmail.sendEmail(SendEmail.java:10)
------解决思路----------------------
http://download.csdn.net/download/www476907899/5093075 这个应该是你缺失的那个jar,javax.mail.internet 不是jdk自带的包