merci beaucoup , ce code a marché avec netbeans mais avec myeclipse non
je vais continuer avec netbeans , maintenat j'ai fais la même chose mais j'ai changé de requête
select * from Materiel where CODEP=?
et j'ai crée une autre classe qui contient la méthode getMateriels()
cette fois j'ai utilisé PreparedStatement
la methode :
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
| public static List getMateriels() {
List mats=new ArrayList();
String sQuery2="select * from MATERIEL where CODEP=?";
Connection cCon=null;
try{
Class cDriverOracle=Class.forName("oracle.jdbc.driver.OracleDriver");
Driver dDriverOracle=(java.sql.Driver)cDriverOracle.newInstance();
DriverManager.registerDriver(dDriverOracle);
cCon=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:azerty","administrateur","admin");
}
catch(Exception e){
System.out.println("--Pbm en chargeant le driver JDBC oracle--");
e.printStackTrace();
}
try{
PreparedStatement sStat=cCon.prepareStatement(sQuery2);
ResultSet rs=sStat.executeQuery();
while( rs.next()){
Materiel mat=new Materiel();
mat.setMatId(rs.getString("NUM_SERIE"));
mat.setFId(rs.getString("CODEF"));
mat.setPostId(rs.getString("CODEP"));
mat.setFCode(rs.getString("FOU_CODEF"));
mat.setTypeId(rs.getString("CODETYPE"));
mat.setNInv(rs.getString("NINVENTAIRE"));
mat.setMName(rs.getString("DESIGNATION"));
mat.setETAT(rs.getString("ETAT"));
mat.setDStk(rs.getString("DATE_STOCK"));
mat.setDLiv(rs.getString("DATE_LIVRAISON"));
mat.setDRmpl(rs.getString("DATE_REMPL"));
mats.add(mat);
}
sStat.close();
}
catch(Exception sqlE){
System.out.println("La Requête n'a pas abouti");
sqlE.printStackTrace();
}
return mats;
} |
et la classe Materiel
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 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132
| /*
package metier;
import java.sql.ResultSet;
import java.sql.SQLException;
/**
*
* @author Safisa
*/
public class Materiel {
private String NUM_SERIE;
private String CODEF;
private String CODEP;
private String FOU_CODEF;
private String CODETYPE;
private String NINVENTAIRE;
private String DESIGNATION;
private String ETAT;
private String DATE_STOCK;
private String DATE_LIVRAISON;
private String DATE_REMPL;
public Materiel() {
}
public Materiel(ResultSet rs) throws SQLException {
init(rs);
}
public void init(ResultSet rs) throws SQLException {
this.NUM_SERIE=rs.getString("NUM_SERIE");
this.CODEF=rs.getString("CODEF");
this.CODEP=rs.getString("CODEP");
this.FOU_CODEF=rs.getString("FOU_CODEF");
this.CODETYPE=rs.getString("CODETYPE");
this.NINVENTAIRE=rs.getString("NINVENTAIRE");
this.DESIGNATION=rs.getString("DESIGNATION");
this.ETAT=rs.getString("ETAT");
this.DATE_STOCK=rs.getString("DATE_STOCK");
this.DATE_LIVRAISON=rs.getString("DATE_LIVRAISON");
this.DATE_REMPL=rs.getString("DATE_REMPL");
}
public String getPostId() {
return CODEP;
}
public void setPostId(String CODEP) {
this.CODEP= CODEP;
}
public String getMName() {
return DESIGNATION;
}
public void setMName(String DESIGNATION) {
this.DESIGNATION = DESIGNATION;
}
public String getMatId() {
return NUM_SERIE;
}
public void setMatId(String NUM_SERIE) {
this.NUM_SERIE = NUM_SERIE;
}
public String getFId() {
return CODEF;
}
public void setFId(String CODEF) {
this.CODEF = CODEF;
}
public String getFCode() {
return FOU_CODEF;
}
public void setFCode(String FOU_CODEF) {
this.FOU_CODEF = FOU_CODEF;
}
public String getTypeId() {
return CODETYPE;
}
public void setTypeId(String CODETYPE) {
this.CODETYPE = CODETYPE;
}
public String getNInv() {
return NINVENTAIRE;
}
public void setNInv(String NINVENTAIRE) {
this.NINVENTAIRE = NINVENTAIRE;
}
public String getETAT() {
return ETAT;
}
public void setETAT(String ETAT) {
this.ETAT = ETAT;
}
public String getDStk() {
return DATE_STOCK;
}
public void setDStk(String DATE_STOCK) {
this.DATE_STOCK = DATE_STOCK;
}
public String getDLiv() {
return DATE_LIVRAISON;
}
public void setDLiv(String DATE_LIVRAISON) {
this.DATE_LIVRAISON = DATE_LIVRAISON;
}
public String getDRmpl() {
return DATE_REMPL;
}
public void setDRmpl(String DATE_REMPL) {
this.DATE_REMPL = DATE_REMPL;
}
} |
puis dans l'action ShowPost dont l'input est vers la page jsp précédente (PostListing.jsp)
ça veut dire que dans chaque post je dois afficher le matériel qui correspond au CODEP. dans une page MaterielListing.jsp ,
et dans postListing.jsp j'ai mis un lien
<a href="/GestionStock/showPost.do?CODEP=<%=depts[i].getId()%>"> Show</a>
ShowPostAction.java:
1 2 3 4 5 6 7
| ShowPostForm showPostForm = (ShowPostForm) form;
Post dept=new Post();
dept.setId(showPostForm.getPostid());
List mats=Methode1.getMateriels();
request.setAttribute("mats",mats);
return mapping.findForward("success"); |
quand j'exécute ça me donne :ORA-01006:la variable de lien n'existe pas
si vous pouvez me monter où elle est l'erreur.
merci une 2ème fois
Partager