Aide - Recherche - Membres - Calendrier
Version complète : Probleme deploiement via web.xml avec un ContextListener
Forum Développeur - Administration serveur, programmation et base de données > Programmation > Java
kore62
Bonjour tout le monde, je suis debutant en jsp et je suis actuellement entrain de développer ma premiere application qui consiste dans un premier temps à interroger une bd Mysql via des pags jsp sans passer par des servlets. (pour le moment...)
J'ai créé un fichier web.xml qui contient un <context-param> qui correspond au pilote "jdbc:mysql"
le fichier xml est le suivant:

CODE
<? xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"     xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"     version="2.4">
<context-param>
<param-name>pilote</param-name>
<param-value>org.gjt.mm.mysql.Driver</param-value>
</context-param>
<context-param>
<param-name>baseDeDonnees</param-name>
<param-value>jdbc:mysql://localhost/papeterie</param-value>
</context-param>
<listener>
<listener-class>
.src.MonListener
</listener-class>
</listener>
</web-app>


Je veux créer un ContextListener qui me charge au démarrage le pilote jdbc de la base... Ceci doit se passer dans la classe MonListener.java dont le code est le suivant:

CODE
package src;
import java.sql.*;
import javax.servlet.*;  public class MonListener implements ServletContextListener{
//Methodes a implementer declaree dans l'interface ServletContextListener
public void contextInitialized(ServletContextEvent sce){
try{    ServletContext application = sce.getServletContext();    String pilote = application.getInitParameter("pilote");     Class.forName(pilote);
}catch(Exception e){
}//trycatch
}//contextInitialized  public void contextDestroyed(ServletContextEvent sce){
//instructions executees a l'arret de l'application
}//contextDestroyed
}//class MonListener


Quand j'insère le fichier web.xml dans ma webapplication papeterie et que je ve la demarrer sous Tomcat via le TomcatManager une erreur se produit;
ECHEC - L'application pour le chemin de contexte /papeterie n'a pas puêtredémarrée

J'ai visualiser les logs et il me renvoie cette erreur:

4 août 2007 13:26:57 org.apache.catalina.core.ApplicationContext log
INFO: Manager: restart: Reloading web application at '/papeterie'

4 août 2007 13:26:57 org.apache.catalina.core.ApplicationContext log
GRAVE: Manager: ManagerServlet.reload[/papeterie]
java.lang.IllegalStateException: Le conteneur org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/papeterie] n'a pas été démarré
at org.apache.catalina.core.StandardContext.reload(StandardContext.java:3005)
at org.apache.catalina.manager.ManagerServlet.reload(ManagerServlet.java:907)
at org.apache.catalina.manager.ManagerServlet.doGet(ManagerServlet.java:354)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilt
erChain.java:269)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.
java:188)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:2
10)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:1
74)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.jav
a:525)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108
)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:870)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:52
8)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorker
Thread.java:81)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
at java.lang.Thread.run(Unknown Source)

4 août 2007 13:27:06 org.apache.catalina.core.ApplicationContext log
INFO: HTMLManager: start: Starting web application at '/papeterie'

4 août 2007 13:27:06 org.apache.catalina.core.ApplicationContext log
INFO: HTMLManager: list: Listing contexts for virtual host 'localhost'


Je vois pas trop d'où vient l'erreur... Etant debutant j vois pas trop la solution si vous pouviez l'aider à resoudre ce problème.
Cordialement.
kore62
C'est bon on m'a aiguille c'etait l'espace entre le ? et xml qui faisait planter mais un autre probleme fait de nouveau planter l'applcation le listener.
Voici le log moins consequent comme vous pouvez le voir:

CITATION
4 août 2007 14:13:45 org.apache.catalina.core.StandardContext start
GRAVE: Error listenerStart


Si quelqu'un peut eclairer ma lanterne... Merci.
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'informations, la mise en page et les images, veuillez cliquer ici.
Invision Power Board © 2001-2008 Invision Power Services, Inc.