IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Spring Web Java Discussion :

problème avec le listenerContext


Sujet :

Spring Web Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Septembre 2007
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 25
    Par défaut problème avec le listenerContext
    Salut,

    Je suis nveau en Spring.
    g fait une vue qui contient un formulaire avec 4 textfields et un submit.
    une classe controller qui etend de SimpleFormController.
    une autre vue pour afficher les valeurs saisies en cas de succes.
    Bref tout fonctionnait à merveille.
    Lorsque j'ai voulu ajouter un controle d'erreurs (validator) exactement comme indiqué dans plusieurs cours et tutoriaux une exception java.lang.IllegalStateException: No WebApplicationContext found: no ContextLoaderListener registered? s'est produite.
    Alors j'ai ajouté la balise :
    <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>
    dans mon web.xml

    et là rien ne va plus. le browser m'affiche toujours que la page spécifiée est inexistante (g crée même une page HTML independante et ça ne marche pas n'en plus).
    Mon container est Tomcat 5.5 et g lu que la balise du listener equivalente est celle que j'ai ajouté.

    En résumant:
    - un web.xml sans declaration du listener fonctionne sans probleme jusqu'à ce que j'ajoute le validator.
    - un web.xml avec declaration du listener ne fonctionne plus (tous les cours et tutoriaux declarent le listener dans le web.xml)

    je suis perduuuuuu

  2. #2
    Rédacteur
    Avatar de Hikage
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    1 177
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 177
    Par défaut
    Montre un peu tes différents fichier spring qu'on puisse avoir une idée
    Hikage
    SCJP / SCWCD & SCWSJD Certified / Spring Framework Certified
    [Personal Web] [CV]

    F.A.Q Spring Framework - Participez !

  3. #3
    Membre averti
    Inscrit en
    Septembre 2007
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 25
    Par défaut
    WEB-INF/applicationContext.xml :

    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
     
    <beans>
     
     
    	<bean id="sessionFactory"
    		class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
    		<property name="configLocation">
    			<value>classpath:hibernate.cfg.xml</value>
    		</property>
    	</bean>
    	<bean id="EtudiantDAO" class="com.ncs.hibernate.EtudiantDAO">
    		<property name="sessionFactory">
    			<ref bean="sessionFactory" />
    		</property>
    	</bean>
    	<bean name="/home.form"
    		class="com.ncs.spring.controllers.HomeController">
    		<property name="greeting">
    			<value>
    				Bienvenu: Votre application est bien configurée
    			</value>
    		</property>
    	</bean>
    	<bean id="viewResolver"
    		class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    		<property name="prefix">
    			<value>/</value>
    		</property>
    		<property name="suffix">
    			<value>.jsp</value>
    		</property>
    		<property name="viewClass">
    			<value>org.springframework.web.servlet.view.JstlView</value>
    		</property>
    	</bean>
    	<bean name="/etudiant.form"
    		class="com.ncs.spring.controllers.EtudiantController">
    		<property name="etudiantDAO">
    			<ref bean="EtudiantDAO" />
    		</property>
    		<property name="formView">
    			<value>simpleform</value>
    		</property>
    		<property name="successView">
    			<value>etudiantRegistred</value>
    		</property>
    		<property name="validator">
    			<ref bean="Etudiant.Validator" />
    		</property>
    	</bean>
    	<bean id="Etudiant.Validator"
    		class="com.ncs.spring.validators.EtudiantValidator">
    	</bean>
    	<bean id="messageSource"
    		class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
    		<property name="basename">
    			<value>messages</value>
    		</property>
    	</bean></beans>

    WEB-INF/web.xml :

    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app version="2.4" 
    	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 
    	http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
     
    	  <servlet>
     
                <servlet-name>hibernateSpring</servlet-name>
     
                <servlet-class>
     
                      org.springframework.web.servlet.DispatcherServlet
     
                </servlet-class>
     
                <load-on-startup>1</load-on-startup>
     
          </servlet>
     
          <servlet-mapping>
     
                <servlet-name>hibernateSpring</servlet-name>
     
                <url-pattern>*.form</url-pattern>
     
          </servlet-mapping>
     
          <context-param>
    			<param-name>contextConfigLocation</param-name>
    			<param-value>/WEB-INF/applicationContext.xml,
    							hibernate.cfg.xml</param-value>
    	  </context-param>
     
    	  <listener>
    			<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    	  </listener>
     
     
     
    </web-app>

    /simpleform.jsp :

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
        pageEncoding="ISO-8859-1"%>
    <%@ taglib uri="/WEB-INF/spring.tld" prefix="spring" %>
    <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <title>Formulaire</title>
    </head>
    <body>
     
     
    	<form method="post" action="<c:url value="/etudiant.form"/>">
    	<h3 align="center"><font color="#0000ff">Formulaire de l'etudiant</font><br></h3>
    	<table>
    	<tbody>
     
    	<tr>
     
    	<td>&nbsp;Nom :<br></td>
    	<td>&nbsp;<input type="text" size="30" name="nomEtudiant"/></td>
     
    	</tr>
     
    	<tr>
     
    	<td>&nbsp;Prénom :<br></td>
    	<td>&nbsp;<input type="text" size="30" name="prenomEtudiant"/></td>
     
    	</tr>
     
    	<tr>
     
    	<td>&nbsp;Email :<br></td>
    	<td>&nbsp;<input type="text" size="30" name="emailEtudiant"></td>
     
    	</tr>
     
    	<tr>
     
    	<td>&nbsp;Adresse</td>
    	<td>&nbsp;<input type="text" size="30" name="adresseEtudiant"></td>
     
    	</tr>
    	<tr>
    	<td>
    	<input type="submit" value="valider" name="valider">
    	</td>
    	</tr>
    	</tbody>
    	</table> 
    	</form>
     
    </body>
    </html>

    EtudiantController.java :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    package com.ncs.spring.controllers;
     
    import org.springframework.validation.BindException;
    import org.springframework.web.servlet.ModelAndView;
    import org.springframework.web.servlet.mvc.SimpleFormController;
     
    import com.ncs.hibernate.Etudiant;
    import com.ncs.hibernate.EtudiantDAO;
     
    public class EtudiantController extends SimpleFormController{
     
    	public EtudiantController(){
    		setCommandClass(Etudiant.class);
    	}
     
    	protected ModelAndView onSubmit(Object command,BindException errors) {
    		try{
    			System.out.println("Etudiant saving ...");
    			Etudiant etudiant = (Etudiant) command;
    			System.out.println("nom :"+etudiant.getNomEtudiant());
    			System.out.println("id :"+etudiant.getCodeEtudiant());
    			System.out.println("Etudiant is being saved");
    			etudiantDAO.save(etudiant);
    			System.out.println("Etudiant saved");
    			return new ModelAndView(getSuccessView(),"etudiant", etudiant);
    		}catch(RuntimeException re){re.toString();}
    		return null;
    	}
     
    	private EtudiantDAO etudiantDAO;
     
    	public void setEtudiantDAO(EtudiantDAO etudiantDAO) {
    		this.etudiantDAO = etudiantDAO;
    	}
     
    }
    pour Etudiant.java et HibernateSessionFactory et EtudiantDAO je crois qu'ils ninterviennent pas dans ce probleme.

    Personnellement j'ai un doute dans les jars.
    les miens sont :
    spring-1.2.8.jar, mysql...jar , Hibernate 3.0 core libraries, Spring 1.2 ORM/DAO/Hibernate3, standard.jar et jstl.jar

    l'exception générée est : GRAVE: Erreur lors de la configuration de la classe d'écoute de l'application (application listener) org.springframework.web.context.ContextLoaderListener
    java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener

  4. #4
    Membre averti
    Inscrit en
    Septembre 2007
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 25
    Par défaut
    Le déploiement ne s'effectue pas du à cette balise :

    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <listener>
    			<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
     
    </listener>

    malgré que la classe existe bien dans mon jar.

  5. #5
    Rédacteur
    Avatar de Hikage
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    1 177
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 177
    Par défaut
    Je doute que cela ait un rapport mais on sait jamais, change l'ordre :

    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    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
     
     
    <web-app version="2.4" 
    	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 
    	http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
     
     
          <context-param>
    			<param-name>contextConfigLocation</param-name>
    			<param-value>/WEB-INF/applicationContext.xml,
    							hibernate.cfg.xml</param-value>
    	  </context-param>
     
    	  <listener>		<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    	  </listener>
     
    	  <servlet>
     
                <servlet-name>hibernateSpring</servlet-name>
     
                <servlet-class>
     
                      org.springframework.web.servlet.DispatcherServlet
     
                </servlet-class>
     
                <load-on-startup>1</load-on-startup>
     
          </servlet>
     
          <servlet-mapping>
     
                <servlet-name>hibernateSpring</servlet-name>
     
                <url-pattern>*.form</url-pattern>
     
          </servlet-mapping>
     
     
     
     
    </web-app>

    Histoire que le fichier web.xml soit valide selon le schema.. je pense pas qu'une invalidité provoque des problèmes de classNotFound mais essaie quand meme.
    Hikage
    SCJP / SCWCD & SCWSJD Certified / Spring Framework Certified
    [Personal Web] [CV]

    F.A.Q Spring Framework - Participez !

  6. #6
    Membre averti
    Inscrit en
    Septembre 2007
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 25
    Par défaut
    Citation Envoyé par Hikage Voir le message
    Je doute que cela ait un rapport mais on sait jamais, change l'ordre :

    Histoire que le fichier web.xml soit valide selon le schema.. je pense pas qu'une invalidité provoque des problèmes de classNotFound mais essaie quand meme.
    J'ai déjà essayé et j'ai ré-essayé malheureusement pas de changement.

  7. #7
    Membre Expert
    Avatar de zekey
    Profil pro
    Inscrit en
    Février 2005
    Messages
    1 036
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 1 036
    Par défaut
    Citation Envoyé par Socrate93 Voir le message
    Le déploiement ne s'effectue pas du à cette balise :

    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <listener>
    			<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
     
    </listener>

    malgré que la classe existe bien dans mon jar.
    Dans ton jar ou dans ton war?
    Et si dans ton war, ou cela?

  8. #8
    Membre averti
    Inscrit en
    Septembre 2007
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 25
    Par défaut
    Citation Envoyé par zekey Voir le message
    Dans ton jar ou dans ton war?
    Et si dans ton war, ou cela?
    La classe existe bien dans le jar spring-1.2.8.jar.

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    124
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 124
    Par défaut
    le spring admet il un break?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. VC++ Direct3D8, problème avec LPD3DXFONT et LPD3DTEXTURE8
    Par Magus (Dave) dans le forum DirectX
    Réponses: 3
    Dernier message: 03/08/2002, 11h10
  2. Problème avec [b]struct[/b]
    Par Bouziane Abderraouf dans le forum CORBA
    Réponses: 2
    Dernier message: 17/07/2002, 10h25
  3. Problème avec le type 'Corba::Any_out'
    Par Steven dans le forum CORBA
    Réponses: 2
    Dernier message: 14/07/2002, 18h48
  4. Problème avec la mémoire virtuelle
    Par Anonymous dans le forum CORBA
    Réponses: 13
    Dernier message: 16/04/2002, 16h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo