[Spring MVC] Remplissage d'un combo box depuis ma BD
Bonsoir,
j ai une methode getAllDomaines qui me return le contenu de ma table, dans ma JSp je voudrai remplir un combo box dynamiquement. donc j ai mis ce controleur:
Code:
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
| package code.web;
import java.util.*;
import code.service.IService;
import code.tables.*;
public class Formulaire {
IService service;
public IService getService(){
return service;
}
public void setService(IService service){
this.service=service;
}
private String[] optionsCombo;
public Formulaire() {
this.setOptionsCombo(getOptions());
}
public String[] getOptionsCombo() {
return optionsCombo;
}
public void setOptionsCombo(String[] optionsCombo) {
this.optionsCombo = optionsCombo;
}
int taille=8,i=0;
public String[] getOptions() {
List dom= (List) service.getAllDomaines();
/*Iterator jt = dom.iterator();
while (jt.hasNext()){
//taille=taille+1;
}*/
String[] options = new String[taille];
String label="test";
// Iterator jt1 = dom.iterator();
for(int i1=0;i1<taille;i1++){
//while (jt1.hasNext()){
//Domaines domaine = (Domaines) jt1.next() ;
options[i1] = label+i1;
//i++;
}
return options;
}
} |
et voila ma JSp
Code:
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
| <%@ page language="java" pageEncoding="ISO-8859-1" contentType="text/html;charset=ISO-8859-1"%>
<%@ taglib uri="/WEB-INF/c.tld" prefix="c" %>
<%@ page isELIgnored="false" %>
<html>
<head>
<title>Formulaire Spring : combo</title>
</head>
<body>
<h3>Formulaire Spring : combo</h3>
<hr>
<form method="post">
<table border="0">
<!-- Combo -->
<tr>
<td>Combo</td>
<td>
<select name="combo">
<c:forEach items="${formulaire.optionsCombo}" var="optionCombo">
<option>${optionCombo}</option>
</c:forEach>
</select>
</td>
</tr>
</table>
<hr>
<input type="submit" value="Envoyer">
</form>
</body>
</html> |
Si j enlève le code en rouge j ai mon cobo quand j exécute ma JSP, mais qd je le met j ai le message suivant:
Code:
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
| type Rapport d'exception
message
description Le serveur a rencontré une erreur interne () qui l'a empêché de satisfaire la requête.
exception
org.springframework.web.util.NestedServletException: Request processing failed; nested exception is org.springframework.beans.FatalBeanException: Could not instantiate class [code.web.Formulaire]; constructor threw exception; nested exception is java.lang.NullPointerException: null
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:406)
org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:348)
javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
cause mère
org.springframework.beans.FatalBeanException: Could not instantiate class [code.web.Formulaire]; constructor threw exception; nested exception is java.lang.NullPointerException: null
org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:187)
org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:148)
org.springframework.web.servlet.mvc.BaseCommandController.createCommand(BaseCommandController.java:331)
org.springframework.web.servlet.mvc.AbstractFormController.formBackingObject(AbstractFormController.java:458)
org.springframework.web.servlet.mvc.AbstractFormController.getErrorsForNewForm(AbstractFormController.java:341)
org.springframework.web.servlet.mvc.AbstractFormController.showNewForm(AbstractFormController.java:322)
org.springframework.web.servlet.mvc.AbstractFormController.handleRequestInternal(AbstractFormController.java:262)
org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)
org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:44)
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:723)
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:663)
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:394)
org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:348)
javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802) |
ce que j ai compris c que j arrive pas à récupérer service.getAllDomaines() sachant que j utilise cette methode ds d autre controlleur et elle me rend le resultat attendu.
Est ce que quelqu un vois le prb merci
Merci de votre aide:roll: