Details
-
Type: Bug
-
Status: Open
-
Priority: Major
-
Resolution: Unresolved
-
Affects Version/s: 3.3
-
Fix Version/s: None
-
Component/s: ACE-Components
-
Labels:None
-
Environment:ICEFaces 3.3.0 in JBoss Application Server 7.1
Description
I'm try to use the <ace:selectMenu> but he don't work with Long values, see example:
<ace:selectMenu id="selectTextColor"
value="#{cadastroTipoSLAController.entity.status.id}"
listVar="status"
listValue="#{cadastroTipoSLAController.listStatusObj}"
itemValue ="#{status.id}"
label="#{msgs['label.uc002.status']}"
labelPosition="top"
required="true" requiredIndicator="*">
<f:facet name="row">
<h:panelGrid columns="1" width="100%">
<h:outputText value="#{status.nome}" />
</h:panelGrid>
</f:facet>
</ace:selectMenu>
the field "cadastroTipoSLAController.entity.status.id" is a Long value.
and the exception is:
java.lang.ClassCastException: java.lang.Long cannot be cast to java.lang.String
org.icefaces.ace.component.selectmenu.SelectMenuRenderer.populateList(SelectMenuRenderer.java:285)
org.icefaces.ace.component.selectmenu.SelectMenuRenderer.encodeScript(SelectMenuRenderer.java:216)
org.icefaces.ace.component.selectmenu.SelectMenuRenderer.encodeBegin(SelectMenuRenderer.java:161)
javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:820)
com.icesoft.faces.renderkit.dom_html_basic.DomBasicRenderer.encodeParentAndChildren(DomBasicRenderer.java:333)
com.icesoft.faces.renderkit.dom_html_basic.DomBasicRenderer.encodeParentAndChildren(DomBasicRenderer.java:342)
com.icesoft.faces.renderkit.dom_html_basic.GridRenderer.encodeChildren(GridRenderer.java:191)
javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:845)
org.icefaces.ace.renderkit.CoreRenderer.renderChild(CoreRenderer.java:74)
org.icefaces.ace.renderkit.CoreRenderer.renderChildren(CoreRenderer.java:62)
org.icefaces.ace.component.panel.PanelRenderer.encodeContent(PanelRenderer.java:219)
org.icefaces.ace.component.panel.PanelRenderer.encodeMarkup(PanelRenderer.java:135)
org.icefaces.ace.component.panel.PanelRenderer.encodeEnd(PanelRenderer.java:74)
javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:875)
javax.faces.component.UIComponent.encodeAll(UIComponent.java:1786)
javax.faces.render.Renderer.encodeChildren(Renderer.java:168)
org.icefaces.impl.renderkit.RendererWrapper.encodeChildren(RendererWrapper.java:49)
javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:845)
javax.faces.component.UIComponent.encodeAll(UIComponent.java:1779)
javax.faces.component.UIComponent.encodeAll(UIComponent.java:1782)
javax.faces.component.UIComponent.encodeAll(UIComponent.java:1782)
com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:402)
com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:125)
com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:121)
com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
javax.faces.webapp.FacesServlet.service(FacesServlet.java:594)
br.com.tfleet.service.center.controller.filter.SecutiryFilter.doFilter(SecutiryFilter.java:70)
<ace:selectMenu id="selectTextColor"
value="#{cadastroTipoSLAController.entity.status.id}"
listVar="status"
listValue="#{cadastroTipoSLAController.listStatusObj}"
itemValue ="#{status.id}"
label="#{msgs['label.uc002.status']}"
labelPosition="top"
required="true" requiredIndicator="*">
<f:facet name="row">
<h:panelGrid columns="1" width="100%">
<h:outputText value="#{status.nome}" />
</h:panelGrid>
</f:facet>
</ace:selectMenu>
the field "cadastroTipoSLAController.entity.status.id" is a Long value.
and the exception is:
java.lang.ClassCastException: java.lang.Long cannot be cast to java.lang.String
org.icefaces.ace.component.selectmenu.SelectMenuRenderer.populateList(SelectMenuRenderer.java:285)
org.icefaces.ace.component.selectmenu.SelectMenuRenderer.encodeScript(SelectMenuRenderer.java:216)
org.icefaces.ace.component.selectmenu.SelectMenuRenderer.encodeBegin(SelectMenuRenderer.java:161)
javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:820)
com.icesoft.faces.renderkit.dom_html_basic.DomBasicRenderer.encodeParentAndChildren(DomBasicRenderer.java:333)
com.icesoft.faces.renderkit.dom_html_basic.DomBasicRenderer.encodeParentAndChildren(DomBasicRenderer.java:342)
com.icesoft.faces.renderkit.dom_html_basic.GridRenderer.encodeChildren(GridRenderer.java:191)
javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:845)
org.icefaces.ace.renderkit.CoreRenderer.renderChild(CoreRenderer.java:74)
org.icefaces.ace.renderkit.CoreRenderer.renderChildren(CoreRenderer.java:62)
org.icefaces.ace.component.panel.PanelRenderer.encodeContent(PanelRenderer.java:219)
org.icefaces.ace.component.panel.PanelRenderer.encodeMarkup(PanelRenderer.java:135)
org.icefaces.ace.component.panel.PanelRenderer.encodeEnd(PanelRenderer.java:74)
javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:875)
javax.faces.component.UIComponent.encodeAll(UIComponent.java:1786)
javax.faces.render.Renderer.encodeChildren(Renderer.java:168)
org.icefaces.impl.renderkit.RendererWrapper.encodeChildren(RendererWrapper.java:49)
javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:845)
javax.faces.component.UIComponent.encodeAll(UIComponent.java:1779)
javax.faces.component.UIComponent.encodeAll(UIComponent.java:1782)
javax.faces.component.UIComponent.encodeAll(UIComponent.java:1782)
com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:402)
com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:125)
com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:121)
com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
javax.faces.webapp.FacesServlet.service(FacesServlet.java:594)
br.com.tfleet.service.center.controller.filter.SecutiryFilter.doFilter(SecutiryFilter.java:70)