Bonjour,

Mon but est de pouvoir exécuter une requête de la base de données MySQL et charger le résultat dans un <option value=""></option>.

Voici ma jsp:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
<label for="choix">Liste :</label>
				<select name="type_relance">
					<option value=""></option>
					<%List<Type_relance> romy=(List<Type_relance>) request.getAttribute("Relance"); %>
                	<% for(int j=0;j<romy.size();j++){%>
						<option value=""><%= romy.get(j).getTyperelance() %></option>
					 <%  } %> 
				</select>
Ma servlet: Relance:

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
package servletPackage;
 
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import daoPackage.DaoType_relance;
 
public class Relance extends HttpServlet {
	public static final String VUE="relance.jsp";
 
	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp)
			throws ServletException, IOException {
		// TODO Auto-generated method stub
 
		req.setAttribute("Type_relance",DaoType_relance.select_typerelance());
		this.getServletContext().getRequestDispatcher(VUE).forward(req, resp);
	}
 
}
Ma servlet DaoType_relance
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
 
package daoPackage;
 
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;
 
import classMetier.Type_relance;
 
import daoPackage.ConnexionManager;
 
public class DaoType_relance {
	public static List<Type_relance> select_typerelance(){
		ResultSet result;
 
		List<Type_relance> list = new ArrayList<Type_relance>();
		ConnexionManager connection= new ConnexionManager();
		if(connection.Connecter_Bd()){ 
			String sql ="SELECT * FROM Table";
			PreparedStatement select_typerelance =null;
			try{
				select_typerelance = ConnexionManager.con.prepareStatement(sql);
				result=select_typerelance.executeQuery();
 
				while (result.next()){
					System.out.println("Dans le while de la liste des type de relance");
					Type_relance typerelance=new Type_relance(result.getInt(1),result.getString(2),result.getString(3));
					list.add(typerelance);
				}
 
			} catch (Exception e){
				System.out.println("Erreur d'execution de la requete"+e.getMessage());
			}
			finally {
				ConnexionManager.fermerConnection(ConnexionManager.con);
			}
		}
		return list;
	}
 
}
Et exécutant tout ceci, j'ai ce message d'erreur:

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
 
 
janv. 22, 2015 6:01:40 PM org.apache.catalina.core.StandardWrapperValve invoke
GRAVE: Servlet.service() for servlet [jsp] in context with path [/cm.xxxxxx] threw exception [An exception occurred processing JSP page /relance.jsp at line 33
 
30: 				<select name="type_relance">
31: 					<option value=""></option>
32: 					<%List<Type_relance> romy=(List<Type_relance>) request.getAttribute("Relance"); %>
33:                 	<% for(int j=0;j<romy.size();j++){%>
34: 						<option value=""><%= romy.get(j).getTyperelance() %></option>
35: 					 <%  } %> 
36: 				</select>			
 
 
Stacktrace:] with root cause
java.lang.NullPointerException
	at org.apache.jsp.relance_jsp._jspService(relance_jsp.java:151)
	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
	at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
	at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
	at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004)
	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
Merci de votre aide