Programación General > JSP/Servlets
Cómo iniciar aplicación de un servlet
darupi:
Al final lo que hice fue que cuando haga click en un botón se ejecute una clase Java que tengo cada 5 minutos.
Lo que pasa que al darle al botón me sale este error:
--- Código: Text --- Exception in thread "Timer-0" java.lang.NoClassDefFoundError: javax/mail/Part at grupo10.programaCorreo$1.run(programaCorreo.java:92) at java.util.TimerThread.mainLoop(Unknown Source) at java.util.TimerThread.run(Unknown Source)Caused by: java.lang.ClassNotFoundException: javax.mail.Part 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) ... 3 more
Os pongo el código donde hago la llamada a el método de la clase:
--- Código: Text --- public static void iniciaAplicacion() { TimerTask timerTask = new TimerTask() { public void run() { //Si el programa esta encendido... if(estadoPrograma() == 1) { //Haz el programa leerCorreo.programa(); } //Si esta apagado cierra el timer else { this.cancel(); } } }; Timer timer = new Timer(); //Cada 5 minuts que conecte timer.scheduleAtFixedRate(timerTask, 0, 15000); }
Alguien sabe por que me sale ese error? Gracias!
arielb:
que servidor web estás usando?, lo que entiendo en el mensaje es que te está pidiendo la librería que estás usando para enviar correo. te falta agregarla.
darupi:
Estoy utilizando Tomcat, la ultima versión, la 6. Lo que pasa que estoy haciendo las pruebas en el localhost en Eclipse y hasta ahora no me habia dado ese problema :s
darupi:
Aclarado, faltaba copiar la libreria en el servidor tomcat
darupi:
Una pregunta:
Tengo este método en la clase ProgramaCorreo
--- Código: Text --- public static void iniciaAplicacion() { TimerTask timerTask = new TimerTask() { public void run() { //Si el programa esta encendido... if(estadoPrograma() == 1) { //Haz el programa leerCorreo.programa(); } //Si esta apagadp cerramos el timer else { this.cancel(); } } }; Timer timer = new Timer(); //Cada 5 minutos conecta con el correo timer.scheduleAtFixedRate(timerTask, 0, 300000); }
Yo a este método de esta clase lo llamo desde una página JSP asi:
--- Código: Text --- <% programaCorreo.iniciaAplicacion();%>
Mi intención es que cada 5 minutos se ejecute un método que tengo en una clase Java.
Antes de ejecutarse el método compruebe si en la base de datos hay un valor a 0. Si es asi que se ejecute, si no es asi no quiero que se ejecute y que se pare el timer.
No se si es así, por eso quería ayuda.
Gracias por adelantado!
Navegación
[#] Página Siguiente
[*] Página Anterior
Ir a la versión completa