Voila le code dans JSP:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
<h:selectOneMenu value="#{ajoutRouteur.nomRegion}">
                  <f:selectItems value="#{ajoutRouteur.regions}" />
               </h:selectOneMenu>
Et dans javabeans AjoutRouteur:
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
package managed.beans;
 
import java.util.ArrayList;
 
//import javax.faces.model.SelectItem;
 
import com.model.MenuAdministrateur;
import com.model.Region;
 
public class AjoutRouteur {
private	String nomRegion;
private ArrayList<Region> regions =new ArrayList<Region>();
public AjoutRouteur(){
	MenuAdministrateur menu=new MenuAdministrateur();
	//ArrayList<String> liste1=new ArrayList<String>();
	ArrayList<Region> liste1=(ArrayList<Region>)menu.listeRegion();
	this.regions=liste1;
	/*for(int i=0;i<liste1.size();i++){
		System.out.println("liste Region"+(liste1.get(i)).getReg());
		regions.set(i,(Region)liste1.get(i));
	}*/
}
 
public ArrayList<Region> getRegions() {
	return regions;
}
 
public void setRegions(ArrayList<Region> regions) {
	this.regions = regions;
}
 
public String getNomRegion() {
	return nomRegion;
}
 
public void setNomRegion(String nomRegion) {
	this.nomRegion = nomRegion;
}
 
}
Et voila l'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
40
41
42
43
44
45
46
Etat HTTP 500 - 
 
--------------------------------------------------------------------------------
 
type Rapport d'exception
 
message 
 
description Le serveur a rencontré une erreur interne () qui l'a empêché de satisfaire la requête.
 
exception 
 
javax.servlet.ServletException: "Argument Error: An option for component j_id_jsp_1798814392_33 was not an instance of javax.faces.model.SelectItem.  Type found: java.util.ArrayList.
	javax.faces.webapp.FacesServlet.service(FacesServlet.java:256)
 
 
cause mère 
 
java.lang.IllegalArgumentException: "Argument Error: An option for component j_id_jsp_1798814392_33 was not an instance of javax.faces.model.SelectItem.  Type found: java.util.ArrayList.
	com.sun.faces.renderkit.RenderKitUtils.getSelectItems(RenderKitUtils.java:321)
	com.sun.faces.renderkit.html_basic.MenuRenderer.getOptionNumber(MenuRenderer.java:506)
	com.sun.faces.renderkit.html_basic.MenuRenderer.renderSelect(MenuRenderer.java:482)
	com.sun.faces.renderkit.html_basic.MenuRenderer.encodeEnd(MenuRenderer.java:447)
	javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:847)
	com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:241)
	com.sun.faces.renderkit.html_basic.GridRenderer.encodeChildren(GridRenderer.java:270)
	javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:827)
	javax.faces.component.UIComponent.encodeAll(UIComponent.java:883)
	javax.faces.render.Renderer.encodeChildren(Renderer.java:137)
	javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:827)
	javax.faces.component.UIComponent.encodeAll(UIComponent.java:883)
	javax.faces.component.UIComponent.encodeAll(UIComponent.java:889)
	com.sun.faces.application.ViewHandlerImpl.doRenderView(ViewHandlerImpl.java:258)
	com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:176)
	com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:108)
	com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:266)
	com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:159)
	javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
 
 
note La trace complète de la cause mère de cette erreur est disponible dans les fichiers journaux de Apache Tomcat/6.0.14.
 
 
--------------------------------------------------------------------------------
 
Apache Tomcat/6.0.14