Données transmises mais erreur invalid submit
Bonjour à tous,
Pour un projet de fin d'études je réalise un site web à l'aide Spring et j'ai quelques difficultés au niveau de mes formulaires voilà l'erreur qui m'ai renvoyé.
Cependant j'arrive tout de même à récupérer les informations saisies dans mon formulaire dans la successView. Je ne comprends pourquoi j'ai cette erreur. Si l'objet n'est pas présent en mémoire comment fait il pour y accéder dans la successView ?
Code:
org.hobr.proto.engine.web.controllers.userSubscriptionController.handleRequestInternal() #273: Invalid submit detected: Form object not found in session
Voilà ma configuration :
dispatcher-servlet.xml
Code:
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
| <!-- 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="prefix" value="/pages/"/>
<property name="suffix" value=".jsp"/>
</bean>
<!-- urlMapping Configuration -->
<bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<value>/pages/views/userSubscription.do=userSubscriptionController</value>
</property>
</bean>
<!-- userSubscription Configuration -->
<bean id="userSubscriptionController" class="org.hobr.proto.engine.web.controllers.userSubscriptionController">
<property name="sessionForm" value="true" />
<property name="formView" value="views/userSubscription" />
<property name="successView" value="views/userSubscriptionSuccess" />
<property name="commandClass" value="org.hobr.proto.engine.web.controllers.userSubscription" />
<property name="commandName" value="userSubscription" />
</bean> |
userSubscriptionController.java
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| public class userSubscriptionController extends SimpleFormController
{
private final Logger sLOGGER = Logger.getLogger(getClass());
protected Object formBackingObject(HttpServletRequest request) throws Exception
{
userSubscription form = new userSubscription();
return form;
}
protected ModelAndView onSubmit(HttpServletRequest request,HttpServletResponse response,
Object formulaire, BindException errors) throws Exception
{
userSubscription form = (userSubscription) formulaire;
return new ModelAndView(getSuccessView(), "userSubscription", form);
}
} |
userSubscription.jsp
Code:
1 2 3 4 5 6 7 8 9 10 11
| <form name="subscription" method="POST" action="userSubscription.do">
<label for="prenom">Prénom</label>
<input id="prenom" type="text" name="prenom" maxlength="25" />
<br />
<label for="nom">Nom</label>
<input id="nom" type="text" name="nom" maxlength="25" />
<br />
<label for="email">Email</label>
<input id="email" type="text" name="email" maxlength="30" />
<input type="submit" name="envoyer" />
</form> |
userSubscriptionSuccess.jsp
Code:
1 2 3 4
| <h2>Inscription</h2>
<p>
Merci de votre inscription un mail va vous être envoyé à cette adresse : ${userSubscription.email}.
</p> |
Solution :
supprimier sessionForm du dispastcher-servlet.xml ou le mettre à false.