Voici mon probleme, si quelqu'un a une réponse, même minime, cela m'aiderai.
J'ai ce bean dans mon xxx-servlet.xml
Qui est appelé par
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 <bean id="LoginProcessController" class="ca.MyDomain.MyDomainweb.web.LoginProcessController"> <property name="sessionForm"> <value>true</value> </property> <property name="commandClass"> <value>ca.MyDomain.MyDomainweb.security.impl.UserLoginAndPassImpl</value> </property> <property name="commandName"> <value>commandUserLoginAndPass</value> </property> <property name="formView"> <value>login</value> </property> <property name="successView"> <value>confirmationLogin</value> </property> </bean>
J'ai mon fichier vues.properties qui contient
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 <bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"> <property name="mappings"> <props> <prop key="/list.do">ListController</prop> <prop key="/login.do">LoginProcessController</prop> <prop key="/*.do">viewController</prop> </props> </property> </bean>
Et un fichier definitions.xml qui contient
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2login.class=org.springframework.web.servlet.view.tiles.TilesJstlView login.url=login
Jusqu'ici tout va bien, voila ce qui cloche dans mon fichier login.jsp que voila:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 <definition name="template" page="/WEB-INF/vues/main.jsp"> </definition> <definition name="login" extends="template"> <put name="content" value="/WEB-INF/vues/login.jsp" type="page"/> </definition>
Je n'arrive pas a récupérer mon object commandUserLoginAndPass.
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 <%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %> <%@ page isELIgnored="false" %> Page de login <form method=post> <table border="5"> <!-- champ de saisie --> <tr> <td>Nom d''usager</td> <td> <input type="text" name="commandUserLoginAndPass.username" value="tapez un texte"> </td> </tr> <!-- mot de passe --> <tr> <td>Mot de passe</td> <td> <input type="password" name="commandUserLoginAndPass.password" value="motDePasse"> </td> </tr> </table> <input type="submit" value="Envoyer"> </form>
Lorsque j'essaie de le lire a partir de mon SimpleFormController que voici:
J'obtient le résultat suivant avec log4J
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 protected ModelAndView onSubmit(Object commandUserLoginAndPass){ Map<String,SafUserData> model = new HashMap<String,SafUserData>(); SafUserData data = new SafUserData(); SafUserData definition = new SafUserData(); Integer id = 0; String nom = new String(); String pass = new String(); String vue = new String(); String enable = new String(); if ( log.isDebugEnabled() ){ log.debug( "commandUserLoginAndPass = " + commandUserLoginAndPass.getClass() ); log.debug( "((UserLoginAndPassImpl) commandUserLoginAndPass).getUsername() = " + ((UserLoginAndPassImpl) commandUserLoginAndPass).getUsername() ); log.debug( "((UserLoginAndPassImpl) commandUserLoginAndPass).getPassword() = " + ((UserLoginAndPassImpl) commandUserLoginAndPass).getPassword() ); } ...
Voici ma classe récupérant mon username et password
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 DEBUG [LoginProcessController:434] 2009-03-13 16:20:02,683 - Removing form session attribute [ca.MyDomain.MyDomainweb.web.LoginProcessController.FORM.commandUserLoginAndPass] DEBUG [LoginProcessController:266] 2009-03-13 16:20:02,699 - No errors -> processing submit DEBUG [LoginProcessController:53] 2009-03-13 16:20:02,699 - commandUserLoginAndPass = class ca.MyDomain.MyDomainweb.security.impl.UserLoginAndPassImpl DEBUG [LoginProcessController:54] 2009-03-13 16:20:02,699 - ((commandUserLoginAndPass) commandUserLoginAndPass).getUsername() = null DEBUG [LoginProcessController:55] 2009-03-13 16:20:02,714 - ((commandUserLoginAndPass) commandUserLoginAndPass).getPassword() = null
Si quelqu'un a une idée du pourquoi je ne peux récupérer mon username et password dans mon LoginProcessController, meme une petite idée pourrait surement m'aider. Merci d'avance.
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 public class UserLoginAndPassImpl implements UserLoginAndPass { private String username; private String password; public String getUsername(){ return this.username; } public void setUsername(String username){ this.username = username; } public String getPassword(){ return this.password; } public void setPassword(String password){ this.password = password; } }
Partager