Problemas com o RichFaces - erro com tabela

5 respostas
F

bom dia pessoal…

estou com o seguinte problema… eu tenho um rich:scrollableDataTable e preciso de um botão para atualizar essa tabela… acontece que toda vez q eu atualizo ela some a linha de titulo e algumas linhas da tabela… e não atualiza e nem dá erro…

meu código:

botão:

<a4j:commandButton image="/imagens/botao/refresh.gif" alt="Atualizar Tabela" style="border:0;" action="#{fornecedorBean.getComponenteTabela}" reRender="listaFornecedores" />

minha tabela:

<rich:scrollableDataTable height="500px" width="700px" id="listaFornecedores" value="#{fornecedorBean.componenteTabela}" var="f">

os dois estão dentro do mesmo form

alguem poderia me ajudar??? :roll:

obrigada!!!

5 Respostas

andrey.oliveira

fermary:
bom dia pessoal…

estou com o seguinte problema… eu tenho um rich:scrollableDataTable e preciso de um botão para atualizar essa tabela… acontece que toda vez q eu atualizo ela some a linha de titulo e algumas linhas da tabela… e não atualiza e nem dá erro…

meu código:

botão:

<a4j:commandButton image="/imagens/botao/refresh.gif" alt="Atualizar Tabela" style="border:0;" action="#{fornecedorBean.getComponenteTabela}" reRender="listaFornecedores" />

minha tabela:

<rich:scrollableDataTable height="500px" width="700px" id="listaFornecedores" value="#{fornecedorBean.componenteTabela}" var="f">

os dois estão dentro do mesmo form

alguem poderia me ajudar??? :roll:

obrigada!!!

Geralmente eu incluo a propriedade binding no scrollableDataTable. Ela faz referência a um objeto UIScrollableDataTable no ManagedBean (vc deve incluir o objeto, e getter/setter do mesmo):

<rich:scrollableDataTable id="tblMetasConsolidadas" rowKeyVar="rkv"
	width="350px" height="180px"
	value="#{metasBean.resultadoConsolidadas}" binding="#{metasBean.tableConsolidadas}" 		  var="resultConsolidadas" selection="#{metasBean.selectConsolidada}" sortMode="single">

Não sei se isso influi na renderização,mas de repente pode te ajudar!!!

F

olá andrey…

eu já tinha tentado com o binding… fiz como vc falou, ele até gera a tabela normal, mas sempre q tento fazer algo na tabela dá o seguinte erro:

08:19:49,937 ERROR [STDERR] 25/07/2008 08:19:49 com.sun.faces.lifecycle.LifecycleImpl phase
WARNING: executePhase(RESTORE_VIEW 1,com.sun.faces.context.FacesContextImpl@30ef85) threw exception
javax.el.ELException: /pages/fornecedor/Fornecedor.xhtml @57,62 binding="#{fornecedorBean.tableFornecedor}": Error writing 'tableFornecedor' on type br.com.bean.FornecedorBean_$$_javassist_1
	at com.sun.facelets.el.TagValueExpression.setValue(TagValueExpression.java:101)
	at com.sun.faces.lifecycle.RestoreViewPhase.doPerComponentActions(RestoreViewPhase.java:245)
	at com.sun.faces.lifecycle.RestoreViewPhase.doPerComponentActions(RestoreViewPhase.java:250)
	at com.sun.faces.lifecycle.RestoreViewPhase.doPerComponentActions(RestoreViewPhase.java:250)
	at com.sun.faces.lifecycle.RestoreViewPhase.doPerComponentActions(RestoreViewPhase.java:250)
	at com.sun.faces.lifecycle.RestoreViewPhase.execute(RestoreViewPhase.java:193)
	at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
	at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:117)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:244)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:508)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at br.com.util.HibernateSessionFilter.doFilter(HibernateSessionFilter.java:21)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	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.MultipartFilter.doFilter(MultipartFilter.java:85)
	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:154)
	at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:260)
	at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:366)
	at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:493)
	at org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:60)
	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
	at org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:58)
	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:230)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
	at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
	at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
	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:157)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:262)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:446)
	at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.IllegalStateException: No conversation context active
	at org.jboss.seam.ScopeType.getContext(ScopeType.java:126)
	at org.jboss.seam.Component.outjectAttribute(Component.java:1667)
	at org.jboss.seam.Component.outjectAttributes(Component.java:1620)
	at org.jboss.seam.Component.outject(Component.java:1473)
	at org.jboss.seam.core.BijectionInterceptor.aroundInvoke(BijectionInterceptor.java:47)
	at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
	at org.jboss.seam.core.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:42)
	at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
	at org.jboss.seam.core.SynchronizationInterceptor.aroundInvoke(SynchronizationInterceptor.java:32)
	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:166)
	at org.jboss.seam.intercept.JavaBeanInterceptor.invoke(JavaBeanInterceptor.java:102)
	at br.com.bean.FornecedorBean_$$_javassist_1.setTableFornecedor(FornecedorBean_$$_javassist_1.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 javax.el.BeanELResolver.setValue(BeanELResolver.java:108)
	at javax.el.CompositeELResolver.setValue(CompositeELResolver.java:68)
	at com.sun.faces.el.FacesCompositeELResolver.setValue(FacesCompositeELResolver.java:93)
	at org.jboss.el.parser.AstPropertySuffix.setValue(AstPropertySuffix.java:73)
	at org.jboss.el.parser.AstValue.setValue(AstValue.java:84)
	at org.jboss.el.ValueExpressionImpl.setValue(ValueExpressionImpl.java:249)
	at com.sun.facelets.el.TagValueExpression.setValue(TagValueExpression.java:93)
	... 50 more

alguem sabe o pq??? :cry:

F

ninguem??? :shock:

F

eu criei no bean a tabela assim:

com get e set

e referenciei no binding da rich:scrollableDataTable

o q tem de errado??

F

mudei várias coisas... principalmente tirei o binding e parou de dar erro, mas acontece uma coisa muito estranha, quando eu atualizo a minha tabela, ele atualiza os registros certinho, mas some a linha do header... e eu não consigo mais selecionar nenhuma linha :?

meu codigo esta assim:

<f:view>
<rich:panel style="width:780px; height:650px;" id="panelListaFornecedores" header="Manutenção de Fornecedores">

	<h:form id="formListarFornecedores">
meu botão para atualizar a tabela..
<a4j:commandButton image="/imagens/botao/refresh.gif" alt="Atualizar Tabela" 
					style="border:0;" action="#{fornecedorBean.AtualizarTabela}" reRender="formListarFornecedores" />

e minha tabela:

<rich:scrollableDataTable height="500px" width="700px" 
			id="listaFornecedores" value="#{fornecedorBean.componenteTabela}" var="f"
			rowKeyVar="rkv" selection="#{fornecedorBean.selection}" sortMode="single">

esta tudo no mesmo view e no mesmo form...

Criado 25 de julho de 2008
Ultima resposta 25 de jul. de 2008
Respostas 5
Participantes 2