Ola,
Fiz uma classe em minha aplicação Java para enviar e-mail, só que está dando um erro e naum sei o q está errado, será q alguém pode me ajudar
os códigos são os seguintes:
package extAulanet.utils;
import javax.mail.Authenticator;
import javax.mail.PasswordAuthentication;
public class CSMTPAutenticacao extends Authenticator{
private String userName;
private String password;
public CSMTPAutenticacao(String userName, String password) {
this.userName = userName;
this.password = password;
}
public PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(userName, password);
}
}
package extAulanet.utils;
import java.util.Date;
import java.util.Properties;
import javax.mail.Authenticator;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
public class CEmail {
private String smtp;
private String username;
private String password;
private String from;
private String to;
private String assunto;
private String corpoMsg;
public CEmail(String host, String smtp, String from, String to, String corpoMsg, String assunto,
String username, String password){
this.smtp = smtp;
this.username = username;
this.password = password;
this.from = from;
this.to = to;
this.assunto = assunto;
this.corpoMsg = corpoMsg;
}
public void enviaEmail(){
Properties p = new Properties();
//p.put(host, smtp);
p.put("mail.smtp.host",smtp);
Authenticator auth = new CSMTPAutenticacao(username, password);
Session session = Session.getInstance(p,auth);
p.put("mail.smtp.auth", "false");
MimeMessage msg = new MimeMessage(session);
try{
msg.setFrom(new InternetAddress(from));
msg.setRecipient(Message.RecipientType.TO, new InternetAddress(to));
msg.setSentDate(new Date());
msg.setSubject(assunto);
msg.setText(corpoMsg.toString(), "text/html");
Transport.send(msg);
}catch(AddressException e){
e.printStackTrace();
}catch(MessagingException e){
e.printStackTrace();
}
}
}
esse é o erro q ta dando:
java.lang.NoClassDefFoundError: javax/mail/MessagingException
at extAulanet.pkServlet.ServletCadastro.processRequest(ServletCadastro.java:204)
at extAulanet.pkServlet.ServletCadastro.doPost(ServletCadastro.java:499)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:595)