bonjour,

Je souahite afficher Dans une liste deux groupes. Par exemple ma liste pourrait etre :
Utilisateurs
user 1
user 2
Group
group 1
group 2

Lorsque j'exécute mon code j'ai une erreur que je n'arrive pas a résoudre.: java.lang.NumberFormatException

Voici ma page JSP:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
                            <span class="formTitle">
                                <h:outputText value="#{bundle.synchronization_title}"/>
                            </span>
 
                         <div class="formCadre">      
                            <h:selectManyListbox value="#{Synchronization_1.optionsSelected}">
                                <f:selectItems value="#{Synchronization_1.changedGroupsOptions.options}"/>
                            </h:selectManyListbox>
                        </div>
voic mon backing bean :
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
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
133
134
135
 
public class Synchronization_1 extends AbstractPageBean{
    @EJB
    private GroupManagerRemote groupsManager;
    @EJB
    private UserManagerRemote userManager;
 
    private static final String PREFIX_GROUPS = "group_";
    private static final String PREFIX_USERS = "user_";
 
    private List optionsSelected = new ArrayList();
    private SelectItem[] changedGroupsOptions;
    final ResourceBundle bundle = getApplicationBean().getRessourceBundle();
 
    /**
     * <p>Construct a new Page bean instance.</p>
     *
     * @throws NamingException 
     */
    public Synchronization_1() throws NamingException {
        groupsManager = EJBUtils.getEJB(GroupManagerRemote.class);
        userManager = EJBUtils.getEJB(UserManagerRemote.class);
 
        getSessionBean().setSelectedMainTab(SessionBean_1.MAIN_TAB_ACCEPTORS);
        getSessionBean().setSelectedAcceptorTab(SessionBean_1.ACCEPTOR_TAB_SYNCHRO);
 
        getSessionBean().getRoleCache().assertHasRoleInTab(
                UserRolesCache.TAB_SYNCHRO,
                getFacesContext());
 
    }
 
    @Override
    public void init() {
        // Perform initializations inherited from our superclass
        super.init();
    }
 
 
    private SelectItem[] loadGroupOptions() {
        final Long acceptorId = getSessionBean().getCurrentAcceptorId();
        final List<Group> changedGroups = groupsManager.getChangedRootGroups(acceptorId);
 
        final SelectItem[] options = new SelectItem[changedGroups.size()];
        int i = 0;
        for (Group changedGroup : changedGroups) {
            SelectItem option = new SelectItem(
                    PREFIX_GROUPS + changedGroup.getId(),
                    changedGroup.getName());
            option.setDisabled(!groupsManager.isConsistentToSynchronize(changedGroup));
            //option.setImage("../public/images/edit.gif");
            options[i++] = option;
        }
 
        return options;
    }
 
    private SelectItem[] loadUserOptions() {
        System.out.println("GROUP USER");
        final List<User> changedUsers = userManager.getChangedUsers();
        System.out.println("List User: " + changedUsers);
        SelectItem[] options = new SelectItem[changedUsers.size()];
        int i = 0;
        for (User changedUser : changedUsers) {
            SelectItem option = new SelectItem(
                    PREFIX_USERS + changedUser.getId(),
                    changedUser.getName());
            //option.setImage("public/images/edit.gif");
            System.out.println("Option: label: " + option.getLabel() + " value: " + option.getValue());
            options[i++] = option;
        }    
        System.out.println("OPTIONS: " + options);
        return options;
    }
 
    /**
     * <p>Return a reference to the scoped data bean.</p>
     *
     * @return a reference to the scoped data bean
     */
    protected ApplicationBean_1 getApplicationBean() {
        return (ApplicationBean_1) getBean("ApplicationBean_1");
    }
 
    /**
     * <p>Return a reference to the scoped data bean.</p>
     *
     * @return a reference to the scoped data bean
     */
    protected SessionBean_1 getSessionBean() {
        return (SessionBean_1) getBean("SessionBean_1");
    }
 
    public List getOptionsSelected(){
        //getSessionBean().setSelectedItemToSynchronize(null);
        return this.optionsSelected;
    }
 
    public void setOptionsSelected(List l){
        this.optionsSelected = l;
    }
 
    @SuppressWarnings("empty-statement")
    public SelectItem[] getChangedGroupsOptions() {
 
        System.out.println("getChangedGroupsOptions");
        final SelectItem[] groupOptions = loadGroupOptions();
        final SelectItem[] usersOption = loadUserOptions();
 
       System.out.println("groupOptions: " + groupOptions);
       System.out.println("usersOption: " + usersOption);
 
       final SelectItemGroup groups = new SelectItemGroup();
       groups.setLabel(bundle.getString("synchronization_groups"));
       groups.setSelectItems(groupOptions);
 
 
        final SelectItemGroup users = new SelectItemGroup();
        users.setLabel(bundle.getString("synchronization_users"));
        users.setSelectItems(usersOption);
 
        System.out.println("Synchro user: " + users.getLabel() + " " + users.getSelectItems());
 
       changedGroupsOptions = new SelectItem[]{groups, users};
 
        System.out.println("CHOIX: " + changedGroupsOptions);
        System.out.println("SELECTED: " + optionsSelected);
 
        return changedGroupsOptions;
    }
 
    public void setChangedGroupsOptions(SelectItem[] dol) {
        this.changedGroupsOptions = dol;
    }
}
Et voici le log :
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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
 
getChangedGroupsOptions
GROUP USER
List User: [User(2, 'test', ADDED)]
Option: label: test value: user_2
OPTIONS: [Ljavax.faces.model.SelectItem;@90ff95
usersOption: [Ljavax.faces.model.SelectItem;@90ff95
Synchro user: Utilisateurs [Ljavax.faces.model.SelectItem;@90ff95
CHOIX: [Ljavax.faces.model.SelectItem;@90ff95
WebModule[/ArchiPEL/Administration]javax.el.ELException: java.lang.NumberFormatException: For input string: "options"
javax.faces.FacesException: javax.el.ELException: java.lang.NumberFormatException: For input string: "options"
        at javax.faces.component.UISelectItems.getValue(UISelectItems.java:133)
        at com.sun.faces.renderkit.RenderKitUtils.getSelectItems(RenderKitUtils.java:323)
        at com.sun.faces.renderkit.html_basic.MenuRenderer.getOptionNumber(MenuRenderer.java:675)
        at com.sun.faces.renderkit.html_basic.MenuRenderer.renderSelect(MenuRenderer.java:793)
        at com.sun.faces.renderkit.html_basic.MenuRenderer.encodeEnd(MenuRenderer.java:335)
        at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:836)
        at javax.faces.component.UIComponent.encodeAll(UIComponent.java:896)
        at javax.faces.render.Renderer.encodeChildren(Renderer.java:137)
        at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:812)
        at javax.faces.component.UIComponent.encodeAll(UIComponent.java:886)
        at javax.faces.component.UIComponent.encodeAll(UIComponent.java:892)
        at com.sun.faces.application.ViewHandlerImpl.doRenderView(ViewHandlerImpl.java:245)
        at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:176)
        at com.sun.rave.web.ui.appbase.faces.ViewHandlerImpl.renderView(ViewHandlerImpl.java:320)
        at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:106)
        at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
        at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:144)
        at com.sun.faces.extensions.avatar.lifecycle.PartialTraversalLifecycle.render(PartialTraversalLifecycle.java:106)
        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
        at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:411)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:317)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
        at com.sagemParkeon.archipel.administration.web.servlet.SessionTimeoutFilter.doFilter(SessionTimeoutFilter.java:50)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
        at com.sun.webui.jsf.util.UploadFilter.doFilter(UploadFilter.java:267)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
        at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:198)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:288)
        at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:271)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:202)
        at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
        at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
        at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:94)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:206)
        at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
        at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:571)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:150)
        at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
        at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:571)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080)
        at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:272)
        at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:637)
        at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:568)
        at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process(DefaultProcessorTask.java:813)
        at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProcessorTask(DefaultReadTask.java:341)
        at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:263)
        at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:214)
        at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:265)
        at com.sun.enterprise.web.connector.grizzly.ssl.SSLWorkerThread.run(SSLWorkerThread.java:106)
 
......
Merci pour votre aide