Error en la aplicacion con servlet

Estoy volviendo a probar el proyecto hecho mediante jsp y servlets, pero me da un error cuando quiero ejecutar un .java que es el que se encarga de enviar los mails necesarios a un usuario. La cuestion es que antes funcionaba y de repente me ha dejado de funcionar y no se que esta mal. El error que me sale es el siguiente:
Javax. Servlet. ServletException: Error instanciando clase de servlet C_aumenpres
org. Apache. Catalina. Valves. ErrorReportValve.invoke(ErrorReportValve.java:117)
org. Apache. Catalina. Connector. CoyoteAdapter.service(CoyoteAdapter.java:151)
org. Apache. Coyote.http11.Http11Processor.process(Http11Processor.java:870)
org. Apache. Coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
org. Apache. Tomcat. Util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
org. Apache. Tomcat. Util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
org. Apache. Tomcat. Util. Threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
java. Lang. Thread.run(Thread.java:636)
Causa raíz
java.lang.NoClassDefFoundError: javax/mail/MessagingException
java.lang.Class.getDeclaredConstructors0(Native Method)
java.lang.Class.privateGetDeclaredConstructors(Class.java:2406)
java.lang.Class.getConstructor0(Class.java:2716)
java.lang.Class.newInstance0(Class.java:343)
java.lang.Class.newInstance(Class.java:325)
org. Apache. Catalina. Valves. ErrorReportValve.invoke(ErrorReportValve.java:117)
org. Apache. Catalina. Connector. CoyoteAdapter.service(CoyoteAdapter.java:151)
org. Apache. Coyote.http11.Http11Processor.process(Http11Processor.java:870)
org. Apache. Coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
org. Apache. Tomcat. Util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
org. Apache. Tomcat. Util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
org. Apache. Tomcat. Util. Threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
java. Lang. Thread.run(Thread.java:636)
Causa raíz
java. Lang. ClassNotFoundException: javax. Mail. MessagingException
org. Apache. Catalina. Loader. WebappClassLoader.loadClass(WebappClassLoader.java:1359)
org. Apache. Catalina. Loader. WebappClassLoader.loadClass(WebappClassLoader.java:1205)
java. Lang. ClassLoader.loadClassInternal(ClassLoader.java:336)
java.lang.Class.getDeclaredConstructors0(Native Method)
java.lang.Class.privateGetDeclaredConstructors(Class.java:2406)
java.lang.Class.getConstructor0(Class.java:2716)
java.lang.Class.newInstance0(Class.java:343)
java.lang.Class.newInstance(Class.java:325)
org. Apache. Catalina. Valves. ErrorReportValve.invoke(ErrorReportValve.java:117)
org. Apache. Catalina. Connector. CoyoteAdapter.service(CoyoteAdapter.java:151)
org. Apache. Coyote.http11.Http11Processor.process(Http11Processor.java:870)
org. Apache. Coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
org. Apache. Tomcat. Util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
org. Apache. Tomcat. Util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
org. Apache. Tomcat. Util. Threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
java. Lang. Thread.run(Thread.java:636)
¿Podrias indicarme que es lo que esta mal?

1 respuesta

Respuesta
1
Aparentemente el error lo tienes aquí:
ava.lang.NoClassDefFoundError: javax/mail/MessagingException
¿Tienes bien linkado el paquete de Java-Mail? Parece que no encuentra la clase que estás instanciando. Vuelve a comprobar todo el empaquetado del proyecto y asegúrate que tienes las librerías de correo en la distribución que se hace en la carpeta WebApps de Tomcat.
Tengo la libreria mail.jar en el eclipse dentro del proyecto y luego en el classpath donde esta jdk tengo las librerias activation.jar y providerutil.jar. Para que pueda funcionar, pero aun asi me da ese error.
Y no entiendo la causa.
Mire las propiedades y me habia actualizado el jdk al actualizar toda la distribucion. La cambie y meti lo que tenia en la anterior en esta nueva, es decir, el mail.jar y el action.jar. Que antes me equivoque poniendo providerutil.jar y me sale el siguiente error:
javax.servlet.ServletException: Error instanciando clase de servlet C_aumenpres
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:870)
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
java.lang.Thread.run(Thread.java:619)
causa raíz
java.lang.NoClassDefFoundError: javax/mail/MessagingException
java.lang.Class.getDeclaredConstructors0(Native Method)
java.lang.Class.privateGetDeclaredConstructors(Class.java:2389)
java.lang.Class.getConstructor0(Class.java:2699)
java.lang.Class.newInstance0(Class.java:326)
java.lang.Class.newInstance(Class.java:308)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:870)
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
java.lang.Thread.run(Thread.java:619)
causa raíz
java.lang.ClassNotFoundException: javax.mail.MessagingException
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1359)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1205)
java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
java.lang.Class.getDeclaredConstructors0(Native Method)
java.lang.Class.privateGetDeclaredConstructors(Class.java:2389)
java.lang.Class.getConstructor0(Class.java:2699)
java.lang.Class.newInstance0(Class.java:326)
java.lang.Class.newInstance(Class.java:308)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:870)
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
java.lang.Thread.run(Thread.java:619)
Y no consigo quitarlo. Me podrias indicar porque me da. Muchas gracias.
El error que te da es porque no encuentra la clase javax. Mail. MessagingException. Esto es por un problema de enlazado con la librería. Mira a ver si en la carpeta de las librerías de Tomcat tienes las los jar que me dices y si son las versiones que corresponden.
Al final ya lo he solucionado, era que habia metido en un lugar incorrecto del nuevo jdk que se me actualizo e instalo las dos librerias comentadas.
Muchas gracias por todo.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas