Bonjour, je suis sur un projet struts2 où je développe une application web. je n'arrive pas à afficher des données dans une jsp que je récupère depuis une base et j'utilise comme navigateur chrome. je suis là dessus depuis 2 semaines à lire des exemples incomplets et je n'arrive pas à adapter.
j'ai mon formulaire de saisie des régions et dans la meme page j'ai un bouton rafraichir qui doit afficher les régions pris dans la base:
<s:form action="/pages/addRegion" method="post">
<s:textfield key=\"saisie.region\" name=\"region\"/>
----
<hr style="width:300px">,
<s:submit align=\"center\" value=\"Ajouter\"/>
</s:form>
</td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td>
<s:form action="/pages/gereRegions">
<td>
<table><s:submit value="Rafraichir"/>
</td>
<td>
<s:submit value="Modifier"/>
</td>
<td>
<s:submit value="Supprimer"/>
</td>
</tr>
<tr>
<th colspan="3" bgcolor="">Liste des régions</th>
</tr>
<tr>
<td colspan="3" bgcolor="pink">
<s:iterator value="ListRegions">
<tr>
<td>
<s:property value="region" />
</td>
</tr>
</s:iterator>
</td>
</tr>
</table>
</s:form>
</td>
</tr>
</table>
la classe que j'utilise pour faire la récupération est GereRegions, son code est le suivant:
package actions;
import com.opensymphony.xwork2.ActionSupport;
import java.sql.*;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.http.*;
import beans.Region;
import org.apache.struts2.interceptor.*;
public class GereRegions extends ActionSupport implements ServletRequestAware{
private String region=null;
private HttpServletRequest request;
private ArrayList<Region> rg=new ArrayList();
public static Connection con=null;
public static Statement st=null;
public static ResultSet rs=null;
public GereRegions() {
// TODO Auto-generated constructor stub
}
public void ConnectDb(){
try
{
Class.forName("com.mysql.jdbc.Driver").newInstance();
}
catch(Exception e)
{
System.out.println("Erreur driver: "+e.getMessage());
}
try
{
con=DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","");
}
catch(SQLException e)
{
System.out.println("Impossible de se connecter à la BD");
}
}
public String execute(){
ConnectDb();
try {
st=con.createStatement();
rs=st.executeQuery("select* from tab_regions");
while(rs.next()){
Region inconnu=new Region();
inconnu.setRegion(rs.getString(2));
System.out.println(inconnu);
rg.add(inconnu);
}
if(rg!=null){
request.setAttribute("ListRegions", rg);
}
if(rs==null){
rs.close();
return ERROR;
}
else{
return SUCCESS;
}
} catch (SQLException e) {
e.printStackTrace();
}
return SUCCESS;
}
@Override
public void setServletRequest(HttpServletRequest request) {
this.request=request;
}
public String getRegion() {
return region;
}
public void setRegion(String region) {
this.region = region;
}
public List<Region> getRg(){
return rg;
}
}
Mon fichier struts.xml:
<result name="success">/jsp/regions.jsp</result>
Si quelqu'un veut bien me donner un coup de main car je ne sais plus quoi faire. Merci
Afficher la suite