gpt4 book ai didi

java.lang.NoClassDefFoundError : javax/mail/Authenticator, 怎么了?

转载 作者:IT老高 更新时间:2023-10-28 21:01:51 34 4
gpt4 key购买 nike

发送到 Email.java

package helper;

//Mail.java - smtp sending starttls (ssl) authentication enabled
//1.Open a new Java class in netbeans (default package of the project) and name it as "Mail.java"
//2.Copy paste the entire code below and save it.
//3.Right click on the file name in the left side panel and click "compile" then click "Run"

import javax.mail.*;
import javax.mail.internet.*;
import java.util.*;

public class sendToEmail
{
String d_email = "sample@gmail.com",
d_password = "mysamplepassword",
d_host = "smtp.gmail.com",
d_port = "465",
//m_to = "sample@yahoo.com",
m_subject = "trial",
m_text = "Hey, this is the testing email.";

public sendToEmail(String strEmailAddress)
{


Properties props = new Properties();
props.put("mail.smtp.user", d_email);
props.put("mail.smtp.host", d_host);
props.put("mail.smtp.port", d_port);
props.put("mail.smtp.starttls.enable","true");
props.put("mail.smtp.auth", "true");
//props.put("mail.smtp.debug", "true");
props.put("mail.smtp.socketFactory.port", d_port);
props.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
props.put("mail.smtp.socketFactory.fallback", "false");

SecurityManager security = System.getSecurityManager();

try
{
Authenticator auth = new SMTPAuthenticator();
Session session = Session.getInstance(props, auth);
//session.setDebug(true);

MimeMessage msg = new MimeMessage(session);
msg.setText(m_text);
msg.setSubject(m_subject);
msg.setFrom(new InternetAddress(d_email));
msg.addRecipient(Message.RecipientType.TO, new InternetAddress(strEmailAddress));
Transport.send(msg);
}
catch (Exception mex)
{
mex.printStackTrace();
}
}

public class SMTPAuthenticator extends javax.mail.Authenticator
{
public PasswordAuthentication getPasswordAuthentication()
{
return new PasswordAuthentication(d_email, d_password);
}
}
}

我的 controller.java 的一部分

/* Send to Email will run properly soon */
sendToEmail email = new sendToEmail(strEmailAddress);

当我运行我的网络应用程序时,我收到以下错误消息:

Type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception javax.servlet.ServletException: Servlet execution threw an exception

root cause java.lang.NoClassDefFoundError: javax/mail/Authenticator controller.RegisterTenantController.doPost(RegisterTenantController.java:108) javax.servlet.http.HttpServlet.service(HttpServlet.java:709) javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

我现在该怎么办?有人可以帮我让这个 Web 应用程序成功吗?

最佳答案

你需要添加两个jar到WEB-INF/lib目录或者你的webapp(或者服务器的lib目录):

关于java.lang.NoClassDefFoundError : javax/mail/Authenticator, 怎么了?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1630002/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com