Classe ok dans une methode main, ko dans la servlet
Bonjour,
Voilà, dans un application, j'ai une classe que j'ai crée qui envoie des mail.
Cette classe se trouve dans un jar que j'ai ajouté à un projet web.
Quand j'appelle cette classe dans un classe avec une méthode main, ça envoie le mail alors que dans une servlet il me lance une ClassNotFoundException
code méthode main :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|
package fr.xxx.web.app.xxx.test;
import fr.xxx.utility.mail.Mail;
public class TestMail {
public static void main(String[] args) {
String smtpHost_ = "srv.xxx.fr";
String smtpFrom_ = "nn.nn@xxx.fr";
String from_ = "nn.nn@xxx.fr";
String to_ = "nn.nn@xxx.fr";
String cc_ = null;
String bcc_ = null;
String subject_ = "Test mail subject";
String content_ = "<font color='blue'>Test mail body</font>";
String embedded_ = null;
String attach_ = null;
String bodyTypeMime_ = "text/html";
String fichierTrace_ = null;
Mail mail = new Mail();
mail.send(smtpHost_, smtpFrom_, from_, to_, cc_, bcc_, subject_, content_, embedded_, attach_, bodyTypeMime_, fichierTrace_);
}
} |
code servlet
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
|
package fr.xxx.web.app.xxx.mail;
import java.io.IOException;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import fr.xxx.utility.mail.Mail;
/**
* Servlet implementation class SendMail
*/
public class SendMail extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public SendMail() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see Servlet#init(ServletConfig)
*/
public void init(ServletConfig config) throws ServletException {
// TODO Auto-generated method stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
String smtpHost_ = "srv.xxx.fr";
String smtpFrom_ = "nn.nn@xxx.fr";
String from_ = "nn.nn@xxx.fr";
String to_ = "nn.nn@xxx.fr";
String cc_ = null;
String bcc_ = null;
String subject_ = "Test mail subject";
String content_ = "<font color='blue'>Test mail body</font>";
String embedded_ = null;
String attach_ = null;
String bodyTypeMime_ = "text/html";
String fichierTrace_ = null;
try {
System.out.println("1");
Mail mail = new Mail();
System.out.println("2");
mail.send(smtpHost_, smtpFrom_, from_, to_, cc_, bcc_, subject_,
content_, embedded_, attach_, bodyTypeMime_, fichierTrace_);
System.out.println("3");
} catch (Exception e) {
System.out.println("==> "+e);
}
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
} |
web.xml
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
<servlet>
<description>Send email servlet</description>
<display-name>SendMail</display-name>
<servlet-name>SendMail</servlet-name>
<servlet-class>fr.altares.web.app.xxx.mail.SendMail</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>SendMail</servlet-name>
<url-pattern>/SendMail</url-pattern>
</servlet-mapping>
</web-app> |
erreur :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
|
GRAVE: "Servlet.service()" pour la servlet SendMail a g�n�r� une exception
java.lang.ClassNotFoundException: fr.xxx.utility.mail.Mail
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1387)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1233)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
at fr.altares.web.app.apprisk.mail.SendMail.doGet(SendMail.java:53)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Unknown Source) |
Merci