SelectItem с нулевым значением

Ну, у меня есть набор автомобилей, которые должны быть в selectOneMenu. Но у меня есть один SelectItem (ноль, "ВСЕ").

Смотрите мой xhtml:

<h:selectOneMenu value="#{mb.carSelected}">
                        <f:selectItems value="#{mb.cars}" />
                        <s:convertEntity />
                    </h:selectOneMenu>

В моем управляемом Bean (МБ):

private List<SelectItem> cars = new ArrayList<SelectItem>();
...
cars.add(new SelectItem(null, "ALL"));
        for (Car c : myCars) {
cars.add(new SelectItem(c, c.getModel()));
        }

Когда я выбираю "ВСЕ" и нажимаю "Отправить", я получаю следующую ошибку:

For input string: "ALL"
java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
java.lang.Integer.parseInt(Integer.java:449)
java.lang.Integer.<init>(Integer.java:660)
org.jboss.seam.ui.EntityIdentifierStore.get(EntityIdentifierStore.java:46)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:597)
org.jboss.seam.util.Reflections.invoke(Reflections.java:22)
org.jboss.seam.intercept.RootInvocationContext.proceed(RootInvocationContext.java:32)
org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:56)
org.jboss.seam.transaction.RollbackInterceptor.aroundInvoke(RollbackInterceptor.java:28)
org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
org.jboss.seam.core.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:44)
org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
org.jboss.seam.core.SynchronizationInterceptor.aroundInvoke(SynchronizationInterceptor.java:32)
org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:107)
org.jboss.seam.intercept.JavaBeanInterceptor.interceptInvocation(JavaBeanInterceptor.java:185)
org.jboss.seam.intercept.JavaBeanInterceptor.invoke(JavaBeanInterceptor.java:103)
org.jboss.seam.ui.EntityIdentifierStore_$$_javassist_seam_13.get(EntityIdentifierStore_$$_javassist_seam_13.java)
org.jboss.seam.ui.AbstractEntityLoader.get(AbstractEntityLoader.java:27)
org.jboss.seam.ui.EntityConverter.getAsObject(EntityConverter.java:76)

Я отладил код и отметил, что в "EntityConverter.getAsObject" переданное значение равно "ALL" и возникает ошибка преобразования. Но другой объект передает значение как 1,2,3 ...

0 ответов

Другие вопросы по тегам