2010-03-31 14 views
1

我有幾個選項卡,其中一個選項卡使用rich:extendedDataTable。如果在使用表的頁面中單擊了sortBy,並且如果我導航到另一個頁面,它將查找舊頁面的bean並引發錯誤,說明該列的sortyBy未定義。富後:extendedDataTable sortby,其他操作沒有得到執行

E.g.如果我在tab1中使用userId上的sortBy(其中列必須有sortBy="#{data.userId}"),然後單擊tab2,它會查找data.userId並引發錯誤。我正在使用Richfaces版本3.2.2SR1。

任何人都可以幫助我嗎?

下面是完整的跟蹤:

javax.el.PropertyNotFoundException: /amendapplication/historyDetails.xhtml @33,174 sortBy="#{data.statusChangeTime}": Property 'statusChangeTime' not found on type uk.gov.wales.rpd.domain.applicationmanagement.ApplicationAttributeEntity 
    com.sun.facelets.el.TagValueExpression.getValue(TagValueExpression.java:73) 
    org.richfaces.model.impl.expressive.ValueBindingExpression.evaluate(ValueBindingExpression.java:59) 
    org.richfaces.model.impl.expressive.ObjectWrapperFactory.wrapObject(ObjectWrapperFactory.java:189) 
    org.richfaces.model.ModifiableModel$RowKeyWrapperFactory.wrapObject(ModifiableModel.java:57) 
    org.richfaces.model.impl.expressive.ObjectWrapperFactory$2.convert(ObjectWrapperFactory.java:177) 
    org.richfaces.model.impl.expressive.ObjectWrapperFactory.convertList(ObjectWrapperFactory.java:138) 
    org.richfaces.model.impl.expressive.ObjectWrapperFactory.wrapList(ObjectWrapperFactory.java:175) 
    org.richfaces.model.ModifiableModel.sort(ModifiableModel.java:235) 
    org.richfaces.model.ModifiableModel.modify(ModifiableModel.java:206) 
    org.richfaces.component.UIExtendedDataTable.createDataModel(UIExtendedDataTable.java:310) 
    org.ajax4jsf.component.UIDataAdaptor.getExtendedDataModel(UIDataAdaptor.java:621) 
    org.ajax4jsf.component.UIDataAdaptor.setRowKey(UIDataAdaptor.java:339) 
    org.ajax4jsf.component.UIDataAdaptor.iterate(UIDataAdaptor.java:1034) 
    org.ajax4jsf.component.UIDataAdaptor.processDecodes(UIDataAdaptor.java:1158) 
    org.ajax4jsf.component.UIDataAdaptor.processDecodes(UIDataAdaptor.java:1168) 
    javax.faces.component.UIForm.processDecodes(UIForm.java:209) 
    org.ajax4jsf.component.AjaxViewRoot$1.invokeContextCallback(AjaxViewRoot.java:392) 
    org.ajax4jsf.component.AjaxViewRoot.processPhase(AjaxViewRoot.java:238) 
    org.ajax4jsf.component.AjaxViewRoot.processDecodes(AjaxViewRoot.java:409) 
    com.sun.faces.lifecycle.ApplyRequestValuesPhase.execute(ApplyRequestValuesPhase.java:78) 
    com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100) 
    com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118) 
    javax.faces.webapp.FacesServlet.service(FacesServlet.java:265) 
    org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:341) 
    org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:177) 
    org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:267) 
    org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:380) 
    org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:507) 
    org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96) 

回答

0

的樣子,就好像你已經綁定多個不同的數據表到同一UIData財產,或者你重複使用相同的bean屬性不同datamodels取決於供應顯示的標籤/表格。

您可以並且不應該爲不同的組件和/或不同的值目的重複使用同一個bean屬性。驗證bean中是否有任何內容是正確的。