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 :

Neither BindingResult nor plain target object for bean name 'inscription' available as request attribute


Sujet :

Spring Web Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    182
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 182
    Par défaut Neither BindingResult nor plain target object for bean name 'inscription' available as request attribute
    Bonjour,

    J'ai un petit soucis avec une page jsp voilà l'erreur qui m'est affiché :

    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
     
    javax.servlet.ServletException: javax.servlet.jsp.JspException: javax.servlet.jsp.JspException: java.lang.IllegalStateException: Neither BindingResult nor plain target object for bean name 'inscription' available as request attribute
    	org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:858)
    	org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:791)
    	org.apache.jsp.pages.views.inscription_jsp._jspService(inscription_jsp.java:105)
    	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
    	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
    	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    	org.xxx.utils.PageTitleFilter.doFilter(PageTitleFilter.java:94)
    	org.springframework.web.servlet.view.InternalResourceView.renderMergedOutputModel(InternalResourceView.java:239)
    	org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:250)
    	org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1072)
    	org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:808)
    	org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:726)
    	org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:636)
    	org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:545)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    Voilà la définition de mon controller, mon fichier de config et ma jsp

    controller-servlet.xml
    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
     
    	<!-- Tiles Configuration -->
    	<bean id="tilesViewResolver" class="org.springframework.web.servlet.view.UrlBasedViewResolver">
    		<property name="order" value="0"/>
    		<property name="requestContextAttribute" value="requestContext"/>
    		<property name="viewClass" value="org.springframework.web.servlet.view.tiles2.TilesView"/>
    		<property name="viewNames" value="page.*"/>
    	</bean>
     
    	<!-- View Resolver -->
    	<bean id="jstlViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    		<property name="order" value="1"/>
    		<property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
    		<property name="redirectContextRelative" value="true" />
    		<property name="prefix" value="/pages/"/>
    		<property name="suffix" value=".jsp"/>
    	</bean>
     
    	<bean id="inscriptionController" class="org.xxx.web.controller.InscriptionController">
     		<property name="formView" value="views/inscription" />
    		<property name="successView" value="views/inscriptionSuccess" />
    		<property name="commandName" value="inscription" />
    		<property name="commandClass" value="org.xxx.web.entites.Utilisateur" />
    		<property name="validator">
    			<bean class="org.xxx.web.validator.InscriptionValidator" />
    		</property>
    		<property name="utilisateurService">
    			<ref bean="utilisateurService" />
    		</property>
    		<property name="inscriptionService">
    			<ref bean="inscriptionService" />
    		</property>
    	</bean>
    InscriptionController.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
     
    	@Override
    	protected Object formBackingObject(HttpServletRequest request) throws Exception
    	{
    		Utilisateur user = new Utilisateur();
    		return user;
    	}
     
    	@Override
    	protected ModelAndView showForm(HttpServletRequest request, HttpServletResponse response, BindException errors) throws Exception {
    		Map<String,List<String>> model = new HashMap<String, List<String>>();
    		/** Ajout des pays */
    		List<String> listePays = inscriptionService.listePays();
    		model.put("listePays", listePays);
    		/** Ajout des ligues */
    		List<String> listeLigue = inscriptionService.listeLigue();
    		model.put("listeLigue", listeLigue);
    		return new ModelAndView(getFormView(),"model",model);
    	}
    inscription.jsp
    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
     
    <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
    <%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
    <%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
    <%@ taglib prefix="tiles" uri="http://tiles.apache.org/tags-tiles"%>
    <%@ page import="org.xxx.utils.TilesConstants" %>
     
    <tiles:insertDefinition name="<%=TilesConstants.TILES_SUB%>">
    	<tiles:putAttribute name="body" type="string">
    		<h2 class="title">Inscription</h2>
    		<p class="text">Veuillez saisir les informations vous concernant.
    		<br />Un email vous sera envoy&eacute; par la suite afin de confirmer votre inscription.
    		<br />Les champs marqu&eacute;s d'un * sont obligatoires pour que l'inscription soit valide.</p>
    		<form:form commandName="inscription" method="post">
    			...
    		</form:form>
    	</tiles:putAttribute>
    </tiles:insertDefinition>
    Lorsque je commente la méthode showForm la page jsp s'affiche normalement j'arrive pas à trouver en quoi le commandName "inscription" pose problème merci d'avance pour votre aide

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    141
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 141
    Par défaut
    C'est tout à fait normal, tu lui passes un objet commande, donc il s'attend à recevoir coté serveur cet objet, or parmi les arguments de ta méthode coté serveur, il n'existe aucun argument portant ce nom.

Discussions similaires

  1. Réponses: 2
    Dernier message: 10/10/2017, 16h44
  2. Réponses: 4
    Dernier message: 10/12/2014, 20h37
  3. Réponses: 1
    Dernier message: 07/03/2013, 13h18
  4. Réponses: 9
    Dernier message: 05/06/2012, 09h39
  5. Erreur "Neither BindingResult nor plain target object"
    Par daydream123 dans le forum Spring
    Réponses: 0
    Dernier message: 11/09/2011, 15h10

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