1
我发现自己处于JSF错误中,但不知道为什么会出现这种错误。我会告诉你的看法部分:IllegalArgumentException:无法将类java.util.HashSet的类型[]转换为类xxx
<rich:extendedDataTable id="objects" value="#{newObjectsBean.objectsList}"
selection="#{newObjectsBean.objectToDelete}"
rendered="#{newObjectsBean.anyResult}"
selectionMode="single" var="item" rows="10" >
<a4j:ajax execute="@form" event="selectionchange"
listener="#{newObjectsBean.selectionListener}" render="deletionButton"/>
<rich:column width="125px" sortBy="#{item.sId}"
sortOrder="#{fragSortingBean.sortsOrders['sId']}">
<f:facet name="header">
<h:panelGrid columns="2" cellpadding="0" cellspacing="2"
style="text-align: left; height: 30px">
<a4j:commandLink execute="@this" value="id" render="objects"
action="#{fragSortingBean.sort}">
<f:param name="sortProperty" value="sId"/>
</a4j:commandLink>
<h:graphicImage value="../../resources/images/arrow_sort_down.png"
rendered="#{fragSortingBean.sortsOrders['sId']=='descending'}"/>
<h:graphicImage value="../../resources/images/arrow_sort_up.png"
rendered="#{fragSortingBean.sortsOrders['sId']=='ascending'}"/>
</h:panelGrid>
</f:facet>
<h:outputText id="ssaId" value="#{item.sId}"/>
</rich:column>
随后的项目是对象(MyObjectBean)只有三个属性(及其相应的getter/setter)
问题跟踪列表如下:
java.lang.IllegalArgumentException: Cannot convert [] of type class java.util.HashSet to class xxx.yyy.zzz.entities.MyObjectBean
at com.sun.el.lang.ELSupport.coerceToType(ELSupport.java:397)
at com.sun.el.parser.AstValue.setValue(AstValue.java:194)
at com.sun.el.ValueExpressionImpl.setValue(ValueExpressionImpl.java:286)
at org.jboss.weld.el.WeldValueExpression.setValue(WeldValueExpression.java:88)
at com.sun.faces.facelets.el.TagValueExpression.setValue(TagValueExpression.java:124)
at org.richfaces.renderkit.SortingFilteringRowsRenderer.updateAttribute(SortingFilteringRowsRenderer.java:142)
at org.richfaces.renderkit.SelectionRenderer.doDecode(SelectionRenderer.java:175)
at org.richfaces.renderkit.ExtendedDataTableRenderer.doDecode(ExtendedDataTableRenderer.java:805)
at org.richfaces.renderkit.RendererBase.decode(RendererBase.java:80)
at javax.faces.component.UIComponentBase.decode(UIComponentBase.java:790)
at org.richfaces.component.UIDataAdaptor.processDecodes(UIDataAdaptor.java:816)
at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1042)
at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1042)
at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1042)
at javax.faces.component.UIForm.processDecodes(UIForm.java:216)
at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1042)
at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1042)
at javax.faces.component.UIViewRoot.processDecodes(UIViewRoot.java:941)
at com.sun.faces.lifecycle.ApplyRequestValuesPhase.execute(ApplyRequestValuesPhase.java:78)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:312)
任何线索? 在此先感谢
太棒了!正如我所说的单一选择模式,我错误地指出了一个对象。非常感谢! – Alexcocia 2015-02-12 07:54:45