Erreur

Fermé
Youry - 10 déc. 2012 à 20:22
 OneAgain - 14 déc. 2012 à 10:22
Bonjour,
Je suis Nouveau en Eclipse Donc svp Aidé moi =)

j'essai de Crée Un site dynamique Pour affiché le contenue d'une base J'ai comme code :



import java.io.PrintWriter;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.sql.*;

@WebServlet("/voir")
public class voir extends HttpServlet {
private static final long serialVersionUID = 1L;

/**
* @see HttpServlet#HttpServlet()
*/
public voir() {
super();

}

protected void doGet(HttpServletRequest q, HttpServletResponse r) throws ServletException, IOException {

r.setContentType("text/html");
PrintWriter out=r.getWriter();
out.println("Contenue de la table1 de la base bd :<br><br>") ;

try {
Class.forName("com.mysql.jdbc.Driver");
}
catch ( ClassNotFoundException e) {
e.printStackTrace();
}
try {
Connection con = DriverManager.getConnection("jdbc:mysql://localhost/bd","dom","op");
Statement st = con.createStatement ();
ResultSet rs = st.executeQuery("select * from table1");

int n = rs.getMetaData().getColumnCount();

out.print("<table border='1' cellspacing='0'>");
while (rs.next()){
out.print("<tr>");
for(int i=1;i<n+1;i++){
out.print("<td>" + rs.getString(i) + "</td>");
}
out.print("</tr>");
}
out.print("</table>");

st.close();
con.close();
}
catch (SQLException e) {
e.printStackTrace();
}
}

/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest q, HttpServletResponse r) throws ServletException, IOException {
// TODO Auto-generated method stub
}

}




Mais quand j'exécute s'affiche un erreur :

type Rapport d''état

message /Dom/Voir

description La ressource demandée n''est pas disponible.

Merci Bien de me aidé a résoudre ce problème .

1 réponse

Bonjour,


plusieurs choses ne vont pas dans ton code. Déjà, il faut savoir que ta servlet est créée une seule fois. Dans ton code, tu vas charger le driver JDBC à chaque fois que tu appelleras ta requête. Ton appli est peut être simple pour le moment, mais ça coûte cher et c'est inutile. Pour cela, il faut que tu charges le driver JDBC en overridant la méthode init de la classe Servlet.

Le message "La ressource demandée n'est pas disponible" est souvent causée par une mauvaise déclaration de ta servlet dans le fichier web.xml
0