Hi,
I just had a few hours of nice debugging time with the @SelectItems stuff.
This first one works ok:
anonymous wrote :
| <h:selectOneListbox value="#{selector.selectedRegion}">
| <f:selectItems value="#{regions}"/>
| </h:selectOneListbox>
but this doesn't
anonymous wrote : <h:selectOneListbox value="#{region}">
| <f:selectItems value="#{selector.regions}"/>
| </h:selectOneListbox>
"selector" is SFSB with get/setRegions, get/setSelectedRegion in local
interface and
@SelectItems
| public List getRegions() {
| List<Region> regions = (List<Region>) em
| .createQuery("from Region").getResultList();
| return regions;
| }
|
Instead the second one gives the following exception:
| 2006-09-19 15:14:57,367 ERROR
[org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/tc3Web].[jsp]]
Servlet.service() for servlet jsp threw exception
| java.lang.IllegalArgumentException: Collection referenced by UISelectItems
with binding '#{selector.regions}' and Component-Path : {Component-Path :
[Class: javax.faces.component.UIViewRoot,ViewId: /kohteen_valinta.jsp][Class:
javax.faces.component.html.HtmlForm,Id:
_tc3Portlet_kohteen_valinta_WAR_TrueConcept__id0][Class:
javax.faces.component.html.HtmlSelectOneListbox,Id:
_tc3Portlet_kohteen_valinta_WAR_TrueConcept__id1][Class:
javax.faces.component.UISelectItems,Id:
_tc3Portlet_kohteen_valinta_WAR_TrueConcept__id2]} does not contain Objects of
type SelectItem
| at
org.apache.myfaces.util.SelectItemsIterator.next(SelectItemsIterator.java:182)
| at
org.apache.myfaces.renderkit.RendererUtils.internalGetSelectItemList(RendererUtils.java:487)
| at
org.apache.myfaces.renderkit.RendererUtils.getSelectItemList(RendererUtils.java:461)
| at
org.apache.myfaces.renderkit.html.HtmlRendererUtils.internalRenderSelect(HtmlRendererUtils.java:272)
| at
org.apache.myfaces.renderkit.html.HtmlRendererUtils.renderListbox(HtmlRendererUtils.java:235)
| at
org.apache.myfaces.renderkit.html.HtmlListboxRendererBase.encodeEnd(HtmlListboxRendererBase.java:73)
| at
javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:331)
| at javax.faces.webapp.UIComponentTag.encodeEnd(UIComponentTag.java:349)
| at javax.faces.webapp.UIComponentTag.doEndTag(UIComponentTag.java:253)
| at
org.apache.jsp.kohteen_005fvalinta_jsp._jspx_meth_h_selectOneListbox_0(kohteen_005fvalinta_jsp.java:254)
| at
org.apache.jsp.kohteen_005fvalinta_jsp._jspx_meth_h_form_0(kohteen_005fvalinta_jsp.java:143)
| at
org.apache.jsp.kohteen_005fvalinta_jsp._jspx_meth_f_view_0(kohteen_005fvalinta_jsp.java:102)
| at
org.apache.jsp.kohteen_005fvalinta_jsp._jspService(kohteen_005fvalinta_jsp.java:64)
| at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
| at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
|
So instead of the wrapped result the original List (of Regions) is passed to
f:selectItems.
Is this expected behaviour?
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3972564#3972564
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3972564
_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user