-
15. Re: rich:extendedDataTable and Selection
kairos Jun 28, 2009 12:41 PM (in response to kairos)No, I don't use the @DataModel and @DataModelSelection anymore. The manager bean implements the method getExercises() which is called by the extendedDataTable. And the selected exercise is set via the method takeSelection() where setExercise() is called.
I hope this will help you.
Andreas -
16. Re: rich:extendedDataTable and Selection
pedalshoe Jun 30, 2009 9:42 PM (in response to kairos)Andreas, you have been so helpful. Thanks to you and this topic, I figured out how to do this using the @DataModel/@Factory/@DataModelSelection approach with selection and sort mode as single... Here it is; The data source is the Sakila db from mysql for demonstration purposes:
1. persistence.xml looks like:
<?xml version="1.0" encoding="UTF-8"?> <persistence version="1.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"> <persistence-unit name="sakilaDB" transaction-type="JTA"> <provider>org.hibernate.ejb.HibernatePersistence</provider> <jta-data-source>java:sakilaDS</jta-data-source> <class>beans.Language</class> <exclude-unlisted-classes>true</exclude-unlisted-classes> <properties> <property name="hibernate.show_sql" value="true"/> <property name="hibernate.format_sql" value="true"/> <property name="hibernate.use_sql_comments" value="true"/> <property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect"/> <property name="jboss.entity.manager.factory.jndi.name" value="java:/sakilaDBEntityManagerFactory"/> </properties> </persistence-unit> </persistence>
2. components.xml contains:
<persistence:managed-persistence-context name="entityManager" auto-create="true" persistence-unit-jndi-name="java:/sakilaDBEntityManagerFactory"/> <security:identity authenticate-method="#{authenticator.authenticate}" remember-me="true"/>
3. my view, index.xhtml, contains:
<rich:extendedDataTable value="#{languages}" var="lang" id="table" width="100px" height="250px" sortMode="#{extendedTableBean.sortMode}" selectionMode="#{extendedTableBean.selectionMode}"> <a4j:support event="onRowMouseUp" action="#{extendedTableBean.onrowmouseup}" /> <a4j:support event="onselectionchange" action="#{extendedTableBean.onselectionchange}" /> <f:facet name="header"> <h:outputText value="Language"/> </f:facet> <rich:column sortable="true" sortBy="#{lang.name}" filterBy="#{lang.name}" filterEvent="onkeyup" width="170px" label="Language"> <h:outputText value="#{lang.name}"/> </rich:column> </rich:extendedDataTable>
2. ExtendedTableBean.java looks like:
/* * To change this template, choose Tools | Templates * and open the template in the editor. */ package sakila; import beans.Language; import java.io.Serializable; import java.util.List; import javax.persistence.EntityManager; import javax.persistence.Query; import org.jboss.seam.ScopeType; import org.jboss.seam.annotations.Factory; import org.jboss.seam.annotations.In; import org.jboss.seam.annotations.Name; import org.jboss.seam.annotations.Scope; import org.jboss.seam.annotations.datamodel.DataModel; import org.jboss.seam.annotations.datamodel.DataModelSelection; /** * * @author CLOGAN */ @Name("extendedTableBean") @Scope(ScopeType.CONVERSATION) public class ExtendedTableBean implements Serializable { @In EntityManager entityManager; @DataModel("languages") private List<Language> languages; // the data @Factory("languages") public void getLanguages() { if (entityManager == null) { System.err.println("ExtendedTableBean.getLanguages() entityManager is null"); } else { Query q = entityManager.createQuery("select l from Language l"); languages = q.getResultList(); System.out.println("Languages len=" + languages.size() + " languages=" + languages.toArray()); } } @DataModelSelection private Language selectedLanguage; // the user selected language private String sortMode = "single"; private String selectionMode = "single"; public ExtendedTableBean() { System.out.println("ExtendedTableBean.ExtendedTableBean() ..."); } /** * @return the sortMode */ public String getSortMode() { return sortMode; } /** * @param sortMode the sortMode to set */ public void setSortMode(String sortMode) { this.sortMode = sortMode; } /** * @return the selectionMode */ public String getSelectionMode() { return selectionMode; } /** * @param selectionMode the selectionMode to set */ public void setSelectionMode(String selectionMode) { this.selectionMode = selectionMode; } public void onrowmouseup() { System.out.println("extendedTableBean.onRowMouseUp()"); printLanguage("onrowmouseup"); } public void onselectionchange() { System.out.println("extendedTableBean.onselectionchange()..."); printLanguage("onselectionchange"); } private void printLanguage(String tag) { System.out.println("Tag: " + tag); if (selectedLanguage != null) { System.out.println("Name=" + selectedLanguage.getName()); System.out.println("Date=" + selectedLanguage.getLastUpdate().toString()); } else { System.err.println("selectedLanguage is null"); } } }
I hope this will also help (if you haven't figured it out already)
-Christopher -
17. Re: rich:extendedDataTable and Selection
msantana Jul 17, 2009 2:43 AM (in response to kairos)Hello Christopher Logan, thanx for yoour code it helped me a lot!!!.
But i have a problem. Wichever row i select, it always set the first row.
Dou you have the seam problem?.
Someone who has a tip?.
I am accessing in this way:<rich:extendedDataTable value="#{archivosExcel}"
and the backing bean:
@DataModel private List<File> archivosExcel; @DataModelSelection("archivosExcel") private File archivoExcel;
But archivoExcel is always the first of the list.
Thanxxx
-
18. Re: rich:extendedDataTable and Selection
pedalshoe Jul 20, 2009 5:06 PM (in response to kairos)Try substituting:
@DataModelSelection("archivosExcel")
for just:
@DataModelSelection
There might be some confusion going on here due to the fact that your DataModel is also named archivosExcel and your selected data model is archivoExcel (without the 's')
-Christopher
-
19. Re: rich:extendedDataTable and Selection
msantana Jul 20, 2009 5:10 PM (in response to kairos)Thanxx man. I will try it later and get you know the results!!!
-
20. Re: rich:extendedDataTable and Selection
sburgula1 Oct 12, 2009 8:10 PM (in response to kairos)I would like to know how to display the rows of datatable, as hyperlinks to backing bean. the whole row should be a hyperlink and when clicked should invoke the backing bean. I have 4 column (i.e rich:column) within the rich:datatable.
Please let me know if anyone has a solution.
The posts here concern rich:extendedDataTable and I cannot use the same functions as mentioned here. Can anyone plz show me an example of their xhtml, backing bean functions(source code) of how to implement the same using rich:datatable.
Looking forward to hearing from anyone soon.
thanks Sai
-
21. Re: rich:extendedDataTable and Selection
sburgula1 Oct 12, 2009 8:14 PM (in response to kairos)Another thing I wanted to add to my previous post is that I am using HtmlDataTable provided by javax.faces.component rather than richfaces. Whenever I try to use that of richfaces, I get a NoClassDefFoundError.
-
22. Re: rich:extendedDataTable and Selection
sburgula1 Oct 16, 2009 8:06 PM (in response to kairos)found that the table could be made linkable by inserting the following code within rich:dataTable.
<a4j:support action="#{courseSearch.loadCourseOffering()}" event="onRowClick"
reRender="searchResults">
<f:setPropertyActionListener value="#{var}"
target="#{courseSearch.selectedCourse}" />
<s:conversationPropagation
type="join"/> </a4j:support>
Although what happens is that when it loads the next page, I have two links to be displayed on the top of the page.
<h:panelGrid columns="2" cellpadding="5" cellspacing="5">
s:link value="Edit Record | "
rendered="#{s:hasPermission('crs_search','edit','')}"
action="#{courseSearch.update()}" >
<s:conversationPropagation type="none"/>
</s:link>
<s:link value="Delete Record" align="right"
rendered="#{s:hasPermission('crs_search','edit','')}"
action="#{courseSearch.confirmDelete()}" >
<s:conversationPropagation type="none"/>
</s:link>
</h:panelGrid>
the problem is that the edit link does not work, the page which displays the details vanishes. And when I examine whether it has reached the backing bean, it definitely has, but does not render the response view.
If anyone has a implementation using a4j:support with rich:dataTable and s:link please get back to me as soon as possible. Any information on this is definitely useful and helpful.
thanks
Sai -
23. Re: rich:extendedDataTable and Selection
racadent Jan 11, 2010 3:42 PM (in response to kairos)Here is an example Bean from richfaces demo site:
-
24. Re: rich:extendedDataTable and Selection
corte86 Apr 19, 2010 4:36 PM (in response to kairos)
Andreas Marx wrote on Jun 18, 2009 19:49:
Sorry for the delay. Here is the important part of ExericseManager:@Name("exerciseManager") @Scope(ScopeType.CONVERSATION) @AutoCreate public class ExerciseInSplitManager { private Exercise exercise; private String filterValue = ""; @In(required = false) @Out(required = false) private HtmlExtendedDataTable table; private SimpleSelection selection; public void init() { exercise = // retrieve Exercise // Das muss hier gemacht werden, da sich sonst die extendedDataTable // nicht refreshed. Ist eigentlich // ziemlich uebel. setTable(null); } public String saveExerciseAndFinish() { // save Exercise resetTable(); setFilterValue(""); return "success"; } public void resetTable() { selection = null; table = null; } public boolean filterExercise(Object current) { Exercise currentExercise = (Exercise) current; if (filterValue.length() == 0) { return true; } String exnamelc = currentExercise.getName().toLowerCase(); if (filterValue.startsWith("*")) { return exnamelc.indexOf(filterValue.substring(1).toLowerCase()) != -1; } if (exnamelc.startsWith(filterValue.toLowerCase())) { return true; } else { return false; } } public String getFilterValue() { return filterValue; } public void setFilterValue(String filterValue) { this.filterValue = filterValue; } public void setSelection(SimpleSelection selection) { this.selection = selection; } public SimpleSelection getSelection() { return selection; } public void takeSelection() { Iterator<Object> iterator = getSelection().getKeys(); while (iterator.hasNext()) { Object key = iterator.next(); table.setRowKey(key); if (table.isRowAvailable()) { setExercise((Exercise) table.getRowData()); } } } public void setTable(HtmlExtendedDataTable table) { this.table = table; } public HtmlExtendedDataTable getTable() { return table; } }
Hope this helps.
AndreasHey Andreas....i'm running through this problem, i'm reaching the solution but not yet....cuz i don't know why, the first time my table gets showed well, the second time (if i refresh or call methods in my bean), the table keeps refreshing with the loading circle on the middle....so, please, can u post the entire bean? i would like to know how and when u build the
excercises
list, which scope is it and so on.....Thanks....Giorgio
-
25. Re: rich:extendedDataTable and Selection
rlopez.rlopez.cnc.una.py Dec 17, 2010 8:48 AM (in response to kairos)Hi everyone,
I've tried the solution proposed by Andreas Marx, but I get the following error:
org.jboss.seam.InstantiationException: Could not instantiate Seam component: departamentoList at org.jboss.seam.Component.newInstance(Component.java:2144) at org.jboss.seam.Component.getInstance(Component.java:2021) bla, bla, bla.............. at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) at java.lang.Thread.run(Unknown Source) Caused by: java.lang.IllegalArgumentException: could not set field value: departamentoList.table at org.jboss.seam.Component.setFieldValue(Component.java:1927) at org.jboss.seam.Component.access$600(Component.java:126) at org.jboss.seam.Component$BijectedField.set(Component.java:2940) at org.jboss.seam.Component.injectAttributes(Component.java:1736) at org.jboss.seam.Component.inject(Component.java:1554) at org.jboss.seam.core.BijectionInterceptor.aroundInvoke(BijectionInterceptor.java:61) at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68) at org.jboss.seam.transaction.TransactionInterceptor$1.work(TransactionInterceptor.java:97) at org.jboss.seam.util.Work.workInTransaction(Work.java:47) at org.jboss.seam.transaction.TransactionInterceptor.aroundInvoke(TransactionInterceptor.java:91) at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68) at org.jboss.seam.core.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:44) at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68) at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:107) at org.jboss.seam.intercept.JavaBeanInterceptor.interceptInvocation(JavaBeanInterceptor.java:185) at org.jboss.seam.intercept.JavaBeanInterceptor.invoke(JavaBeanInterceptor.java:103) at py.cnc.epweb.action.DepartamentoList_$$_javassist_seam_2.validate(DepartamentoList_$$_javassist_seam_2.java) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.jboss.seam.util.Reflections.invoke(Reflections.java:22) at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:144) at org.jboss.seam.Component.callComponentMethod(Component.java:2249) at org.jboss.seam.Component.callCreateMethod(Component.java:2172) at org.jboss.seam.Component.newInstance(Component.java:2132) ... 78 more Caused by: java.lang.IllegalArgumentException: Could not set field value by reflection: DepartamentoList.table on: py.cnc.epweb.action.DepartamentoList with value: class org.richfaces.component.html.HtmlExtendedDataTable at org.jboss.seam.util.Reflections.set(Reflections.java:86) at org.jboss.seam.Component.setFieldValue(Component.java:1923) ... 103 more Caused by: java.lang.IllegalArgumentException: Can not set org.richfaces.component.html.HtmlExtendedDataTable field py.cnc.epweb.action.DepartamentoList.table to org.richfaces.component.html.HtmlExtendedDataTable at sun.reflect.UnsafeFieldAccessorImpl.throwSetIllegalArgumentException(Unknown Source) at sun.reflect.UnsafeFieldAccessorImpl.throwSetIllegalArgumentException(Unknown Source) at sun.reflect.UnsafeObjectFieldAccessorImpl.set(Unknown Source) at java.lang.reflect.Field.set(Unknown Source) at org.jboss.seam.util.Reflections.set(Reflections.java:71) ... 104 more
My view, DepartamentoList.xhtml, contains:
<rich:extendedDataTable width="786px" height="200px" value="#{departamentoList.resultList}" var="_departamento" binding="#{table}" sortMode="#{departamentoList.sortMode}" selectionMode="#{departamentoList.selectionMode}" tableState="#{departamentoList.tableState}" selection="#{departamentoList.selection}" enableContextMenu="false" rendered="#{not empty departamentoList.resultList}" noDataLabel="No existen datos"> ... </rich:extendedDataTable>
And DepartamentoList.java code, I have added only a few lines to the class generated by seam-gen:
@Name("departamentoList") @AutoCreate //ADDED public class DepartamentoList extends ExtendedEntityQuery<Departamento> { //ADDED @In(required = false) @Out(required = false) private HtmlExtendedDataTable table; //bla, bla, stuff generated by seam-gen //ADDED public void setTable(HtmlExtendedDataTable table) { this.table = table; } public HtmlExtendedDataTable getTable() { return table; } }
ExtendedEntityQuery is just a copy-paste of the RF example ExtendedTableBean.java with a few changes:
public class ExtendedEntityQuery<T extends BaseEntity> extends EntityQuery<T> { private static final long serialVersionUID = 6029165340127854590L; private String sortMode = "multi"; private String selectionMode = "multi"; private Object tableState; private Selection selection = new SimpleSelection(); private ExtendedTableDataModel<T> dataModel; private List<T> selectedList = new ArrayList<T>(); //setters and getters }
I haven't added any functionality yet. Is there anything else that I have to do to make it work?
Thanks.
-
26. Re: rich:extendedDataTable and Selection
murali.chvmk Feb 4, 2011 11:12 AM (in response to kairos)Hi Andreas Marx,
A very BIG thanks to you. I really struggled a lot from last 2days with this issues. Based on your suggestion its got solved.
THANK YOU VERY MUCH
-
27. Re: rich:extendedDataTable and Selection
amfp Feb 4, 2011 2:29 PM (in response to kairos)Hello,
I've used the Christopher's solution, but when I
want to recover the row I select, always set the first.
row. I need reRender a outputText when I select a row,
but when I select a row the value no change.
My xhtml:
...
<rich:extendedDataTable
value="#{languages}"
var="lang"
id="table"
width="100px" height="250px"
sortMode="#{extendedTableBean.sortMode}"
selectionMode="#{extendedTableBean.selectionMode}">
<a4j:support
event="onRowMouseUp"
action="#{extendedTableBean.onrowmouseup}" />
<a4j:support
event="onselectionchange"
action="#{extendedTableBean.onselectionchange}" />
<f:facet name="header">
<h:outputText value="Language"/>
</f:facet>
<rich:column sortable="true"
sortBy="#{lang.name}"
filterBy="#{lang.name}"
filterEvent="onkeyup"
width="170px"
label="Language">
<h:outputText value="#{lang.name}"/>
<a4j:support event="onselectionchange" reRender="output" action="#{extendedTableBean.onselectionchange}">
</rich:column>
</rich:extendedDataTable>
<h:outputText id = "ouput" value = extendedTableBean.selectedLanguage/>
...
Some idea??Thanksss -
28. Re: rich:extendedDataTable and Selection
murali.chvmk Feb 11, 2011 8:50 AM (in response to kairos)Hi Ana Maria,
Dont use duplicate a4j:support. Remove column level support. Make sure action extendedTableBean.onselectionchange returns seleceted language which is type of the bean which you want. and use binding variable which type of
@In private HtmlExtendedDataTable table;
Try this.
-
29. Re: rich:extendedDataTable and Selection
vinitadhopia.vinitadhopia.rogers.com Jan 29, 2012 4:41 PM (in response to kairos)Hi Ruben,
Were you ever able to resolve this issue? I'm getting the same exception when attempting to bind the <rich:extendedDataTable> in my JSF to an org.richfaces.component.html.HtmlExtendedDataTable in my backing bean:
The format exactly matches Andreas' solution, so I'm not sure what I'm missing.
JSF<rich:extendedDataTable id="customerTable" value="#{chartGenerator.allCustomers}" var="_cust" binding="#{table}" width="580px" height="400px" sortMode="multi" selectionMode="multi" selection="#{chartGenerator.selection}">
Backing Bean
@In(required = false) @Out(required = false) private HtmlExtendedDataTable table; /** * @return the table */ public HtmlExtendedDataTable getTable() { return table; } /** * @param table the table to set */ public void setTable(HtmlExtendedDataTable table) { this.table = table; }
Exceptionorg.jboss.seam.InstantiationException: Could not instantiate Seam component: chartGenerator at org.jboss.seam.Component.newInstance(Component.java:2170) at org.jboss.seam.Component.getInstance(Component.java:2024) at org.jboss.seam.Component.getInstance(Component.java:1986) at org.jboss.seam.Component.getInstance(Component.java:1980) at org.jboss.seam.Namespace.getComponentInstance(Namespace.java:55) at org.jboss.seam.Namespace.getComponentInstance(Namespace.java:50) at org.jboss.seam.el.SeamELResolver.resolveBase(SeamELResolver.java:148) at org.jboss.seam.el.SeamELResolver.getValue(SeamELResolver.java:51) at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:54) at com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:72) at org.jboss.el.parser.AstIdentifier.getValue(AstIdentifier.java:44) at org.jboss.el.parser.AstValue.getValue(AstValue.java:63) at org.jboss.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186) at com.sun.facelets.el.TagValueExpression.getValue(TagValueExpression.java:71) at javax.faces.component.UIData.getValue(UIData.java:609) at org.ajax4jsf.component.UIDataAdaptorBase.getValue(UIDataAdaptorBase.java:1647) at org.ajax4jsf.component.SequenceDataAdaptor.getDataModel(SequenceDataAdaptor.java:65) at org.richfaces.component.UIExtendedDataTable.resetDataModel(UIExtendedDataTable.java:390) at org.ajax4jsf.component.UIDataAdaptorBase.beforeRenderResponse(UIDataAdaptorBase.java:1656) at org.richfaces.component.UIExtendedDataTable.beforeRenderResponse(UIExtendedDataTable.java:417) at org.ajax4jsf.component.RenderPhaseUIDataAdaptorVisitor.beforeComponent(RenderPhaseUIDataAdaptorVisitor.java:44) at org.richfaces.event.RenderPhaseComponentListener.processComponents(RenderPhaseComponentListener.java:47) at org.richfaces.event.RenderPhaseComponentListener.processComponents(RenderPhaseComponentListener.java:55) at org.richfaces.event.RenderPhaseComponentListener.processComponents(RenderPhaseComponentListener.java:55) at org.richfaces.event.RenderPhaseComponentListener.processComponents(RenderPhaseComponentListener.java:55) at org.richfaces.event.RenderPhaseComponentListener.beforePhase(RenderPhaseComponentListener.java:71) at org.ajax4jsf.component.AjaxViewRoot.processPhaseListeners(AjaxViewRoot.java:188) at org.ajax4jsf.component.AjaxViewRoot.encodeBegin(AjaxViewRoot.java:510) at javax.faces.component.UIComponent.encodeAll(UIComponent.java:928) at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:592) at org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:100) at org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:176) at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:110) at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100) at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:266) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83) at org.jboss.seam.web.IdentityFilter.doFilter(IdentityFilter.java:40) at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69) at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:90) at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69) at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64) at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69) at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45) at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69) at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:206) at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290) at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:388) at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:515) at org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:56) at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69) at org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:60) at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69) at org.jboss.seam.web.HotDeployFilter.doFilter(HotDeployFilter.java:53) at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69) at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433) at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92) at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126) at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:598) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) at java.lang.Thread.run(Thread.java:662) Caused by: java.lang.IllegalArgumentException: could not set field value: chartGenerator.table at org.jboss.seam.Component.setFieldValue(Component.java:1930) at org.jboss.seam.Component.access$600(Component.java:127) at org.jboss.seam.Component$BijectedField.set(Component.java:2966) at org.jboss.seam.Component.injectAttributes(Component.java:1739) at org.jboss.seam.Component.inject(Component.java:1557) at org.jboss.seam.core.BijectionInterceptor.aroundInvoke(BijectionInterceptor.java:61) at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68) at org.jboss.seam.core.ConversationInterceptor.aroundInvoke(ConversationInterceptor.java:56) at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68) at org.jboss.seam.core.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:44) at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68) at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:107) at org.jboss.seam.intercept.JavaBeanInterceptor.interceptInvocation(JavaBeanInterceptor.java:185) at org.jboss.seam.intercept.JavaBeanInterceptor.invoke(JavaBeanInterceptor.java:103) at com.proofpoint.ArchivingIssues.action.ChartGeneratorBean_$$_javassist_seam_3.init(ChartGeneratorBean_$$_javassist_seam_3.java) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.jboss.seam.util.Reflections.invoke(Reflections.java:22) at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:144) at org.jboss.seam.Component.callComponentMethod(Component.java:2275) at org.jboss.seam.Component.callCreateMethod(Component.java:2198) at org.jboss.seam.Component.newInstance(Component.java:2158) ... 78 more Caused by: java.lang.IllegalArgumentException: Could not set field value by reflection: ChartGeneratorBean.table on: com.proofpoint.ArchivingIssues.action.ChartGeneratorBean with value: class org.richfaces.component.html.HtmlExtendedDataTable at org.jboss.seam.util.Reflections.set(Reflections.java:86) at org.jboss.seam.Component.setFieldValue(Component.java:1926) ... 101 more Caused by: java.lang.IllegalArgumentException: Can not set org.richfaces.component.html.HtmlExtendedDataTable field com.proofpoint.ArchivingIssues.action.ChartGeneratorBean.table to org.richfaces.component.html.HtmlExtendedDataTable at sun.reflect.UnsafeFieldAccessorImpl.throwSetIllegalArgumentException(UnsafeFieldAccessorImpl.java:146) at sun.reflect.UnsafeFieldAccessorImpl.throwSetIllegalArgumentException(UnsafeFieldAccessorImpl.java:150) at sun.reflect.UnsafeObjectFieldAccessorImpl.set(UnsafeObjectFieldAccessorImpl.java:63) at java.lang.reflect.Field.set(Field.java:657) at org.jboss.seam.util.Reflections.set(Reflections.java:71)