slt , j'ai besoin de qlq'un pour m'aider, j'avais un problème, concernant la récupération des données d'un fourmulaire sous strust 2.

je vais décrire mnt mon TP , qui j'aimerai le réaliser.

tt d'abord j'ai créer un fichier connexion.jsp

le code d la page connexion.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
19
20
21
22
23
 
 
<%@ taglib prefix="s" uri="/struts-tags"%> 
<img id="indicator1" src="images/att.gif" alt="Loading Info" style="display:none"/>
<s:div id="loginDiv" theme="ajax">
    <div style="width: 170px;border-style: solid">
      <s:form action="ajaxLogin"  validate="flase" method="get">
        <tr>
          <td colspan="2">
            Login
          </td>
        </tr>
        <tr>
          <td colspan="2">
            <s:actionerror />
          </td>
        </tr>  
          <s:textfield name="username" label="Login name"/>
          <s:password name="password" label="Password"/>
          <s:submit theme="ajax" targets="loginDiv" notifyTopics="ajaxLogin" indicator="indicator1" />    
      </s:form>
    </div>
    </s:div>
cette page je l'ai integrer dans la page ajaxlogin.jsp

voila le code de la page ajaxlogin.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
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
<%@ taglib prefix="s" uri="/struts-tags"%>
<html>
  <head>
    <s:head theme="ajax" debug="flase"/>
  </head>
  <body>
Younes Asmaoui :
<br>
<br>
<br>
<br>
   
 <s:include value="connexion.jsp"></s:include>
  </body>
</html> 

puis j'ai crée une autre page en cas ou l'utilisateur à reussi de taper le vrai login et password.

code de la page ajaxloginsuccess.jsp

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1234567891011121314
 
 
<%@ taglib prefix="s" uri="/struts-tags"%>
<html>
  <head>
    <title>Login Success</title>
  </head>
  <body>
    <p align="center"><font color="#000080" size="5">Login Successful !</font></p>
    <h1> Welcome to <%=request.getParameter("username")%>  </h1>
    <h3> <s:textfield value="%{#session.c}" label="Désignation"></s:textfield></h3>
 
  </body>
</html>

a propos le code de mon bean le voila

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
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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
 
package net.roseindia;
import java.util.Map;
 
import com.opensymphony.xwork2.Action;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
 
 
 
/**
 * <p> Validate a user login. </p>
 */
public  class Login  extends ActionSupport {
 
 
    /**
         * 
         */
	private static final long serialVersionUID = 1L;
	 private String username ;
	 private String password;
 
	public String execute() throws Exception {
        //System.out.println("Validating login");
 
		   // if (username.equals("admin"))
		    //{
		    	//return SUCCESS;
		    //}
		    //else
		    //{
		Map<String,Object> session = ActionContext.getContext().getSession () ;
		session.put("c", getUsername());
		  if(getUsername().equals("admin"))
            	   return Action.SUCCESS;
		  else
		  {
			  addActionError("ERREUR");
			  return Action.ERROR;
		  }
 
		    //}
 
 
 
	}
    // ---- Username property ----
 
    /**
     * <p>Field to store User username.</p>
     * <p/>
     */
 
 
 
    /**
     * <p>Provide User username.</p>
     *
     * @return Returns the User username.
     */
    public String getUsername() {
        return username;
    }
 
    /**
     * <p>Store new User username</p>
     *
     * @param value The username to set.
     */
    public void setUsername(String value) {
        username = value;
    }
 
    // ---- Username property ----
 
    /**
     * <p>Field to store User password.</p>
     * <p/>
     */
 
 
 
    /**
     * <p>Provide User password.</p>
     *
     * @return Returns the User password.
     */
    public String getPassword() {
        return password;
    }
 
    /**
     * <p>Store new User password</p>
     *
     * @param value The password to set.
     */
    public void setPassword(String value) {
        password = value;
    }
 
}

Et le fichier de Configuration strust.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
 
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd">
 
<struts>
 
  	<constant name="struts.enable.DynamicMethodInvocation" value="false" />
    <constant name="struts.devMode" value="true" />
 
    <package name="/"  extends="struts-default">
 
 
         <action name="ajaxLogin" class="net.roseindia.Login" method="execute">
           <result name="input">/connexion.jsp</result>
           <result name="error">/connexion.jsp</result>
           <result>/ajaxloginsuccess.jsp</result>
         </action>
 
    </package>
 
</struts>
quand , j'introduit "admin" ds la zone de login et j'exécute le formulaire , tjrs je récupére la valeur null;

Merci d'avoir m'aider