Fórum Ao deletar não atualiza meu pdata table #411762
20/01/2012
0
<p:tabView>.
Ele me retorna esta mensagem
20/01/2012 11:22:50 org.primefaces.util.ComponentUtils findClientIds
INFO: Cannot find component with identifier :listagem in view.
20/01/2012 11:22:50 org.primefaces.util.ComponentUtils findClientIds
INFO: Cannot find component with identifier :listagem in view.
Este listahem existe sim é o meu form que trem o datatable
O p column
<p:column style=width:10px>
<f:facet name=header>Manutenção</f:facet>
<p:commandLink action=#{entidadeBean.editar} title=Editar ajax=false>
<h:graphicImage library=imagens name=editar16.png/>
<f:setPropertyActionListener value=# target=#{entidadeBean.selecionada}/>
</p:commandLink>
<p:commandLink action=#{entidadeBean.excluir} update=:pesquisa :listagem title=Excluir onclick=if (!confirm(Confirma a exclusão do lançamento #{entidade.nome}?)) return false;>
<h:graphicImage library=imagens name=excluir16.png/>
<f:setPropertyActionListener target=#{entidadeBean.selecionada} value=# />
</p:commandLink>
</p:column>
Jose Boas
Curtir tópico
+ 0Posts
20/01/2012
Davi Costa
cola a página inteira vai ficar mais fácil ajudar...
mas pela msg posso adiantar q :listagem está dentro de alguém q precisa ser referenciado:
seuPai:listagem, ao invocar a exclusão.
att Davi
Gostei + 0
20/01/2012
Jose Boas
<p:commandLink action=#{entidadeBean.excluir} title=Excluir update=:tab onclick=if (!confirm(Confirma a exclusão do lançamento #{entidade.nome}?)) return false;>
<h:graphicImage library=imagens name=excluir16.png/>
<f:setPropertyActionListener target=#{entidadeBean.selecionada} value=#/>
</p:commandLink>
Eu tive pensando e se eu possuir uma tela onde eu tenho que incluir em campos textos e inserir valores emdatatable, o que eu digitei antes irá se perder ao mandar atualizar a listagem, do jeito que eu fiz aqui.
veja todo o código
<?xml version=1.0 encoding=ISO-8859-1 ?>
<!DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Transitional//EN http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd>
<html xmlns=http://www.w3.org/1999/xhtml
xmlns:h=http://java.sun.com/jsf/html
xmlns:f=http://java.sun.com/jsf/core
xmlns:ui=http://java.sun.com/jsf/facelets
xmlns:p=http://primefaces.org/ui
xmlns:fn=http://java.sun.com/jsp/jstl/functions>
<ui:composition template=/templates/interna.xhtml>
<ui:define name=titulo>
Entidades
</ui:define>
<ui:define name=corpo>
<p:tabView id=tab dynamic=true cache=true style=height:480px activeIndex=#{entidadeBean.tab}>
<h:inputText></h:inputText>
<p:tab title=Pesquisa id=listagem>
<h:form>
<p:commandButton value=Novo update=:tab actionListener=#{entidadeBean.tabIndex}/>
</h:form>
<h:form>
<p:dataTable
paginator=true
rows=5
paginatorTemplate=
rowsPerPageTemplate=5,10
value=#{entidadeBean.lista}
var=entidade
selectionMode=single
selection=#{entidadeBean.selecionada}
rowKey=#{entidade.codigo}>
<f:facet name=header>
Lista de Entidades
</f:facet>
<p:column style=width:10px sortBy=#{entidade.codigo}
filterBy=#{entidade.codigo} headerText=Filtro>
<f:facet name=header>Código</f:facet>
<h:outputText value=#{entidade.codigo}/>
</p:column>
<p:column style=width:400px sortBy=#{entidade.nome}
filterBy=#{entidade.nome} headerText=Filtro>
<f:facet name=header>Nome</f:facet>
<h:outputText value=#{entidade.nome} />
</p:column>
<p:column style=width:10px>
<f:facet name=header>Manutenção</f:facet>
<p:commandLink actionListener=#{entidadeBean.tabIndex} update=:tab title=Editar ajax=true>
<h:graphicImage library=imagens name=editar16.png/>
<f:setPropertyActionListener value=# target=#{entidadeBean.selecionada}/>
</p:commandLink>
<p:commandLink action=#{entidadeBean.excluir} title=Excluir update=:tab onclick=if (!confirm(Confirma a exclusão do lançamento #{entidade.nome}?)) return false;>
<h:graphicImage library=imagens name=excluir16.png/>
<f:setPropertyActionListener target=#{entidadeBean.selecionada} value=#/>
</p:commandLink>
</p:column>
<f:facet name=footer>
Total de registros : #{fn:length(entidadeBean.lista)}
</f:facet>
</p:dataTable>
</h:form>
</p:tab>
<p:tab title=Dados id=dados>
<h:form id=cadastro>
<h:messages/>
<h:inputHidden value=#{entidadeBean.selecionada.codigo}/>
<h:panelGrid columns=3>
<h:panelGroup rendered=#{empty entidadeBean.selecionada.dataCadastro}>
<h:outputLabel value=Data for=data />
</h:panelGroup>
<h:panelGroup rendered=#{!empty entidadeBean.selecionada.dataCadastro}>
<h:outputLabel value= for=data />
</h:panelGroup>
<h:outputLabel value=Nome for=nome/>
<h:outputLabel value=Apelido for=apelido/>
<h:panelGroup rendered=#{empty entidadeBean.selecionada.dataCadastro}>
<p:calendar id=data value=#{entidadeBean.selecionada.dataCadastro} mode=popup showOn=button popupIconOnly=true pattern=dd/MM/yyyy />
</h:panelGroup>
<h:panelGroup rendered=#{!empty entidadeBean.selecionada.dataCadastro}>
<h:outputLabel value= for=data />
</h:panelGroup>
<h:inputText id=nome value=#{entidadeBean.selecionada.nome} required=true size=55 />
<h:inputText id=apelido value=#{entidadeBean.selecionada.apelido} required=true size=32 />
</h:panelGrid>
</h:form>
</p:tab>
</p:tabView>
</ui:define>
</ui:composition>
</html>
Gostei + 0
20/01/2012
Jose Boas
package financeiro.web;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import javax.faces.bean.*;
import javax.faces.model.SelectItem;
import financeiro.web.util.ContextoUtil;
import financeiro.entidade.EntidadeRN;
import financeiro.entidade.Entidade;
@ManagedBean(name=entidadeBean)
@RequestScoped
public class EntidadeBean {
private Entidade selecionada = new Entidade();
private List<Entidade> lista = null;
private List<Entidade> listaPorNome = null;
private List<SelectItem> entidadeSelect;
private String keySearch = null;
private Integer tab = 0;
public void tabIndex(){
if (this.tab.equals(0))
this.tab = 1;
else
this.tab = 0;
}
public Integer getTab() {
return tab;
}
public void setTab(Integer tab) {
this.tab = tab;
}
public String getKeySearch() {
return keySearch;
}
public void setKeySearch(String keySearch) {
this.keySearch = keySearch;
}
public List<Entidade> ListaPorNome() {
if(this.selecionada.getNome() != null) {
ContextoBean contextoBean = ContextoUtil.getContextoBean();
EntidadeRN entidadeRN = new EntidadeRN();
this.listaPorNome = entidadeRN.listarPorNome(contextoBean.getUsuarioLogado(),this.selecionada.getNome());
}
return listaPorNome;
}
public List<Entidade> getListaPorNome() {
if( this.listaPorNome == null) {
ContextoBean contextoBean = ContextoUtil.getContextoBean();
EntidadeRN entidadeRN = new EntidadeRN();
this.listaPorNome = entidadeRN.listarPorNome(contextoBean.getUsuarioLogado(),this.selecionada.getNome());
}
return listaPorNome;
}
public List<Entidade> completaNome(String query) {
List<Entidade> sugestoes = new ArrayList<Entidade>();
ContextoBean contextoBean = ContextoUtil.getContextoBean();
EntidadeRN entidadeRN = new EntidadeRN();
this.lista = entidadeRN.listar(contextoBean.getUsuarioLogado());
for(Entidade e : this.lista){
if(e.getNome().startsWith(query)){
sugestoes.add(e);
}
}
return sugestoes;
}
public List<SelectItem> getEntidadeSelect() {
if(this.entidadeSelect == null){
this.entidadeSelect = new ArrayList<SelectItem>();
ContextoBean contextoBean = ContextoUtil.getContextoBean();
EntidadeRN entidadeRN = new EntidadeRN();
List<Entidade> entidade = entidadeRN.listar(contextoBean.getUsuarioLogado());
SelectItem item = null;
for (Entidade enti : entidade){
item = new SelectItem(enti,enti.getApelido());
item.setEscape(false);
entidadeSelect.add(item);
}
}
return entidadeSelect;
}
public Entidade getselecionada() {
return this.selecionada;
}
public void setselecionada(Entidade selecionada) {
this.selecionada = selecionada;
}
public List<Entidade> getLista() {
if (this.lista == null){
ContextoBean contextoBean = ContextoUtil.getContextoBean();
EntidadeRN entidadeRN = new EntidadeRN();
this.lista = entidadeRN.listar(contextoBean.getUsuarioLogado());
}
return lista;
}
public void setLista(List<Entidade> lista) {
this.lista = lista;
}
public String editar() {
return /restrito/entidade;
}
public String novo(){
this.selecionada = new Entidade();
this.selecionada.setDataCadastro(new Date(System.currentTimeMillis()));
System.out.println(this.selecionada.getDataCadastro());
return /restrito/entidade;
}
public void excluir(){
EntidadeRN entidadeRN = new EntidadeRN();
this.selecionada = entidadeRN.carregar(this.selecionada.getCodigo());
entidadeRN.excluir(this.selecionada);
this.lista = null;
}
}
Gostei + 0
21/01/2012
Davi Costa
att Davi
Gostei + 0
22/01/2012
Jose Boas
eu coloquei os valores que eu quero que o tab funcione. Vou postar aqui o meu código com as novas mudanças, para que outras possam fazer. Eu uso o prime faces 3.0 e o morraja 2.0.
xhtml
<?xml version=1.0 encoding=ISO-8859-1 ?>
<!DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Transitional//EN http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd>
<html xmlns=http://www.w3.org/1999/xhtml
xmlns:h=http://java.sun.com/jsf/html
xmlns:f=http://java.sun.com/jsf/core
xmlns:ui=http://java.sun.com/jsf/facelets
xmlns:p=http://primefaces.org/ui
xmlns:fn=http://java.sun.com/jsp/jstl/functions>
<ui:composition template=/templates/interna.xhtml>
<ui:define name=titulo>
Entidades
</ui:define>
<ui:define name=corpo>
<p:tabView id=tab dynamic=true ajax=false cache=true style=height:480px activeIndex=#{entidadeBean.tab}>
<p:tab title=Pesquisa id=pesquisa ajax=false>
<h:form>
<p:commandButton value=Novo update=:tab actionListener=#{entidadeBean.tabIndex}/>
</h:form>
<h:form id=listagem>
<p:dataTable
paginator=true
rows=5
paginatorTemplate=
rowsPerPageTemplate=5,10
value=#{entidadeBean.lista}
var=entidade
selectionMode=single
selection=#{entidadeBean.selecionada}
rowKey=#{entidade.codigo}>
<f:facet name=header>
Lista de Entidades
</f:facet>
<p:column style=width:10px sortBy=#{entidade.codigo}
filterBy=#{entidade.codigo} headerText=Filtro>
<f:facet name=header>Código</f:facet>
<h:outputText value=#{entidade.codigo}/>
</p:column>
<p:column style=width:400px sortBy=#{entidade.nome}
filterBy=#{entidade.nome} headerText=Filtro>
<f:facet name=header>Nome</f:facet>
<h:outputText value=#{entidade.nome} />
</p:column>
<p:column style=width:10px>
<f:facet name=header>Manutenção</f:facet>
<p:commandLink action=#{entidadeBean.editar} update=:tab title=Editar>
<h:graphicImage library=imagens name=editar16.png/>
<f:setPropertyActionListener value=# target=#{entidadeBean.selecionada}/>
</p:commandLink>
<p:commandLink action=#{entidadeBean.excluir} ajax=false title=Excluir onclick=if (!confirm(Confirma a exclusão do lançamento #{entidade.nome}?)) return false;>
<h:graphicImage library=imagens name=excluir16.png/>
<f:setPropertyActionListener target=#{entidadeBean.selecionada} value=#/>
<f:ajax execute=@form render=:listagem/>
</p:commandLink>
</p:column>
<f:facet name=footer>
Total de registros : #{fn:length(entidadeBean.lista)}
</f:facet>
</p:dataTable>
</h:form>
</p:tab>
<p:tab title=Dados id=dados>
<h:form id=cadastro>
<h:messages/>
<h:inputHidden value=#{entidadeBean.selecionada.codigo}/>
<h:panelGrid columns=3 id=linha1>
<h:outputLabel value=Data for=data/>
<h:outputLabel value=Nome for=nome/>
<h:outputLabel value=Apelido for=apelido/>
<p:calendar id=data value=#{entidadeBean.selecionada.dataCadastro} mode=popup showOn=button popupIconOnly=true pattern=dd/MM/yyyy size=15/>
<h:inputText id=nome value=#{entidadeBean.selecionada.nome} required=true size=60 />
<h:inputText id=apelido value=#{entidadeBean.selecionada.apelido} required=true size=38 />
</h:panelGrid>
<h:panelGrid columns=3 id=linha2>
<h:outputLabel value=Endereço for=endereco/>
<h:outputLabel value=Cidade for=cidade/>
<h:outputLabel value=Bairro for=bairro/>
<h:inputText id=endereco value=#{entidadeBean.selecionada.endereco} required=true size=60/>
<h:inputText id=cidade value=#{entidadeBean.selecionada.cidade} required=true size=35/>
<h:inputText id=bairro value=#{entidadeBean.selecionada.bairro} required=true size=25 />
</h:panelGrid>
</h:form>
</p:tab>
</p:tabView>
</ui:define>
</ui:composition>
</html>
___________________
ManagedBean
package financeiro.web;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import javax.faces.bean.*;
import javax.faces.model.SelectItem;
import financeiro.web.util.ContextoUtil;
import financeiro.entidade.EntidadeRN;
import financeiro.entidade.Entidade;
@ManagedBean(name=entidadeBean)
@ViewScoped
public class EntidadeBean {
private Entidade selecionada = new Entidade();
private List<Entidade> lista = null;
private List<Entidade> listaPorNome = null;
private List<SelectItem> entidadeSelect;
private String keySearch = null;
private Integer tab = 0;
public void tabIndex(){
if (this.tab.equals(0))
this.tab = 1;
else
this.tab = 0;
}
public Integer getTab() {
return tab;
}
public void setTab(Integer tab) {
this.tab = tab;
}
public String getKeySearch() {
return keySearch;
}
public void setKeySearch(String keySearch) {
this.keySearch = keySearch;
}
public List<Entidade> ListaPorNome() {
if(this.selecionada.getNome() != null) {
ContextoBean contextoBean = ContextoUtil.getContextoBean();
EntidadeRN entidadeRN = new EntidadeRN();
this.listaPorNome = entidadeRN.listarPorNome(contextoBean.getUsuarioLogado(),this.selecionada.getNome());
}
return listaPorNome;
}
public List<Entidade> getListaPorNome() {
if( this.listaPorNome == null) {
ContextoBean contextoBean = ContextoUtil.getContextoBean();
EntidadeRN entidadeRN = new EntidadeRN();
this.listaPorNome = entidadeRN.listarPorNome(contextoBean.getUsuarioLogado(),this.selecionada.getNome());
}
return listaPorNome;
}
public List<Entidade> completaNome(String query) {
List<Entidade> sugestoes = new ArrayList<Entidade>();
ContextoBean contextoBean = ContextoUtil.getContextoBean();
EntidadeRN entidadeRN = new EntidadeRN();
this.lista = entidadeRN.listar(contextoBean.getUsuarioLogado());
for(Entidade e : this.lista){
if(e.getNome().startsWith(query)){
sugestoes.add(e);
}
}
return sugestoes;
}
public List<SelectItem> getEntidadeSelect() {
if(this.entidadeSelect == null){
this.entidadeSelect = new ArrayList<SelectItem>();
ContextoBean contextoBean = ContextoUtil.getContextoBean();
EntidadeRN entidadeRN = new EntidadeRN();
List<Entidade> entidade = entidadeRN.listar(contextoBean.getUsuarioLogado());
SelectItem item = null;
for (Entidade enti : entidade){
item = new SelectItem(enti,enti.getApelido());
item.setEscape(false);
entidadeSelect.add(item);
}
}
return entidadeSelect;
}
public Entidade getselecionada() {
return this.selecionada;
}
public void setselecionada(Entidade selecionada) {
this.selecionada = selecionada;
}
public List<Entidade> getLista() {
if (this.lista == null){
ContextoBean contextoBean = ContextoUtil.getContextoBean();
EntidadeRN entidadeRN = new EntidadeRN();
this.lista = entidadeRN.listar(contextoBean.getUsuarioLogado());
}
return lista;
}
public void setLista(List<Entidade> lista) {
this.lista = lista;
}
public void editar() {
this.tab = 1;
}
public void novo(){
this.selecionada = new Entidade();
this.selecionada.setDataCadastro(new Date(System.currentTimeMillis()));
}
public void excluir(){
EntidadeRN entidadeRN = new EntidadeRN();
this.selecionada = entidadeRN.carregar(this.selecionada.getCodigo());
entidadeRN.excluir(this.selecionada);
this.selecionada = new Entidade();
this.lista = null;
this.tab = 0;
}
}
Gostei + 0
22/01/2012
Jose Boas
Mojarra 2.0.3
Gostei + 0
23/01/2012
Jose Boas
Pedaço do código xhtml do outro que agora da erro.
<p:selectOneMenu id =entidade value=#{lancamentoBean.editado.entidade} effect=fade>
<f:selectItems value=#{entidadeBean.entidadeSelect} />
</p:selectOneMenu>
23811 [http-8082-3] ERROR org.hibernate.LazyInitializationException - failed to lazily initialize a collection of role: financeiro.usuario.Usuario.permissao, no session or session was closed
org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role: financeiro.usuario.Usuario.permissao, no session or session was closed
at org.hibernate.collection.AbstractPersistentCollection.throwLazyInitializationException(AbstractPersistentCollection.java:380)
at org.hibernate.collection.AbstractPersistentCollection.throwLazyInitializationExceptionIfNotConnected(AbstractPersistentCollection.java:372)
at org.hibernate.collection.AbstractPersistentCollection.readSize(AbstractPersistentCollection.java:119)
at org.hibernate.collection.PersistentSet.size(PersistentSet.java:162)
at java.util.AbstractSet.equals(Unknown Source)
at org.hibernate.collection.PersistentSet.equals(PersistentSet.java:430)
at financeiro.usuario.Usuario.equals(Usuario.java:185)
at financeiro.entidade.Entidade.equals(Entidade.java:300)
at financeiro.entidade.EntidadeJuridica.equals(EntidadeJuridica.java:51)
at javax.faces.component.SelectUtils.matchValue(SelectUtils.java:105)
at javax.faces.component.UISelectOne.validateValue(UISelectOne.java:149)
at javax.faces.component.UIInput.validate(UIInput.java:960)
at javax.faces.component.UIInput.executeValidate(UIInput.java:1204)
at javax.faces.component.UIInput.processValidators(UIInput.java:693)
at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1081)
at javax.faces.component.UIForm.processValidators(UIForm.java:240)
at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1081)
at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1081)
at javax.faces.component.UIViewRoot.processValidators(UIViewRoot.java:1159)
at com.sun.faces.lifecycle.ProcessValidationsPhase.execute(ProcessValidationsPhase.java:72)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:97)
at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:114)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:310)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at financeiro.web.filter.ConexaoHibernateFilter.doFilter(ConexaoHibernateFilter.java:32)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:344)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:110)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:84)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:98)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:95)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:79)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.authentication.rememberme.RememberMeAuthenticationFilter.doFilter(RememberMeAuthenticationFilter.java:120)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:55)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:36)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:188)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:106)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:150)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
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:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:291)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Unknown Source)
23/01/2012 16:34:00 com.sun.faces.lifecycle.ProcessValidationsPhase execute
AVISO: failed to lazily initialize a collection of role: financeiro.usuario.Usuario.permissao, no session or session was closed
org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role: financeiro.usuario.Usuario.permissao, no session or session was closed
at org.hibernate.collection.AbstractPersistentCollection.throwLazyInitializationException(AbstractPersistentCollection.java:380)
at org.hibernate.collection.AbstractPersistentCollection.throwLazyInitializationExceptionIfNotConnected(AbstractPersistentCollection.java:372)
at org.hibernate.collection.AbstractPersistentCollection.readSize(AbstractPersistentCollection.java:119)
at org.hibernate.collection.PersistentSet.size(PersistentSet.java:162)
at java.util.AbstractSet.equals(Unknown Source)
at org.hibernate.collection.PersistentSet.equals(PersistentSet.java:430)
at financeiro.usuario.Usuario.equals(Usuario.java:185)
at financeiro.entidade.Entidade.equals(Entidade.java:300)
at financeiro.entidade.EntidadeJuridica.equals(EntidadeJuridica.java:51)
at javax.faces.component.SelectUtils.matchValue(SelectUtils.java:105)
at javax.faces.component.UISelectOne.validateValue(UISelectOne.java:149)
at javax.faces.component.UIInput.validate(UIInput.java:960)
at javax.faces.component.UIInput.executeValidate(UIInput.java:1204)
at javax.faces.component.UIInput.processValidators(UIInput.java:693)
at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1081)
at javax.faces.component.UIForm.processValidators(UIForm.java:240)
at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1081)
at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1081)
at javax.faces.component.UIViewRoot.processValidators(UIViewRoot.java:1159)
at com.sun.faces.lifecycle.ProcessValidationsPhase.execute(ProcessValidationsPhase.java:72)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:97)
at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:114)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:310)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at financeiro.web.filter.ConexaoHibernateFilter.doFilter(ConexaoHibernateFilter.java:32)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:344)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:110)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:84)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:98)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:95)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:79)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.authentication.rememberme.RememberMeAuthenticationFilter.doFilter(RememberMeAuthenticationFilter.java:120)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:55)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:36)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:188)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:106)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:150)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
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:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:291)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Unknown Source)
javax.faces.FacesException: failed to lazily initialize a collection of role: financeiro.usuario.Usuario.permissao, no session or session was closed
at com.sun.faces.lifecycle.ProcessValidationsPhase.execute(ProcessValidationsPhase.java:80)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:97)
at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:114)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:310)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at financeiro.web.filter.ConexaoHibernateFilter.doFilter(ConexaoHibernateFilter.java:32)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:344)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:110)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:84)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:98)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:95)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:79)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.authentication.rememberme.RememberMeAuthenticationFilter.doFilter(RememberMeAuthenticationFilter.java:120)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:55)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:36)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:188)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:106)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:80)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:356)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:150)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
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:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:291)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Unknown Source)
Caused by: org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role: financeiro.usuario.Usuario.permissao, no session or session was closed
at org.hibernate.collection.AbstractPersistentCollection.throwLazyInitializationException(AbstractPersistentCollection.java:380)
at org.hibernate.collection.AbstractPersistentCollection.throwLazyInitializationExceptionIfNotConnected(AbstractPersistentCollection.java:372)
at org.hibernate.collection.AbstractPersistentCollection.readSize(AbstractPersistentCollection.java:119)
at org.hibernate.collection.PersistentSet.size(PersistentSet.java:162)
at java.util.AbstractSet.equals(Unknown Source)
at org.hibernate.collection.PersistentSet.equals(PersistentSet.java:430)
at financeiro.usuario.Usuario.equals(Usuario.java:185)
at financeiro.entidade.Entidade.equals(Entidade.java:300)
at financeiro.entidade.EntidadeJuridica.equals(EntidadeJuridica.java:51)
at javax.faces.component.SelectUtils.matchValue(SelectUtils.java:105)
at javax.faces.component.UISelectOne.validateValue(UISelectOne.java:149)
at javax.faces.component.UIInput.validate(UIInput.java:960)
at javax.faces.component.UIInput.executeValidate(UIInput.java:1204)
at javax.faces.component.UIInput.processValidators(UIInput.java:693)
at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1081)
at javax.faces.component.UIForm.processValidators(UIForm.java:240)
at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1081)
at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:1081)
at javax.faces.component.UIViewRoot.processValidators(UIViewRoot.java:1159)
at com.sun.faces.lifecycle.ProcessValidationsPhase.execute(ProcessValidationsPhase.java:72)
... 45 more
Gostei + 0
23/01/2012
Robson Teixeira
possiveis caminhos
1ª) Verifique como está gerenciando o EntityManager ou a Session
2ª) Veja se está usando AJAX pois o escopo de View mantem a instancia de sua ManagedBean durante a requisição.
espero ter ajudado.
att
robson
Gostei + 0
23/01/2012
Jose Boas
Eu tenho um entidade lancamento a onde eu lanço os dados refenrentes a entidade quando esta entidade era RequestScoped sem problema eu consegio inserir um valor, mas dái eu precisei mudar para View para utilizar no cadastro de entidade e comçõu a dar erro. No cadastro de entidade mesmo não da erro mas quando eu chamo a Bean pelo lancamento dá este erro. Sou novato ainda
em java.
Minha Classe EntidadeBean.
package financeiro.web;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import javax.faces.bean.*;
import javax.faces.model.SelectItem;
import financeiro.web.util.ContextoUtil;
import financeiro.entidade.EntidadeRN;
import financeiro.entidade.Entidade;
@ManagedBean(name=entidadeBean)
@ViewScoped
public class EntidadeBean implements Serializable{
/**
*
*/
private static final long serialVersionUID = 207539345003695907L;
private Entidade selecionada = new Entidade();
private List<Entidade> lista = null;
private List<Entidade> listaPorNome = null;
private List<SelectItem> entidadeSelect;
private String keySearch = null;
private Integer tab = 0;
public void tabIndex(){
if (this.tab.equals(0))
this.tab = 1;
else
this.tab = 0;
}
public Integer getTab() {
return tab;
}
public void setTab(Integer tab) {
this.tab = tab;
}
public String getKeySearch() {
return keySearch;
}
public void setKeySearch(String keySearch) {
this.keySearch = keySearch;
}
public List<Entidade> ListaPorNome() {
if(this.selecionada.getNome() != null) {
ContextoBean contextoBean = ContextoUtil.getContextoBean();
EntidadeRN entidadeRN = new EntidadeRN();
this.listaPorNome = entidadeRN.listarPorNome(contextoBean.getUsuarioLogado(),this.selecionada.getNome());
}
return listaPorNome;
}
public List<Entidade> getListaPorNome() {
if( this.listaPorNome == null) {
ContextoBean contextoBean = ContextoUtil.getContextoBean();
EntidadeRN entidadeRN = new EntidadeRN();
this.listaPorNome = entidadeRN.listarPorNome(contextoBean.getUsuarioLogado(),this.selecionada.getNome());
}
return listaPorNome;
}
public List<Entidade> completaNome(String query) {
List<Entidade> sugestoes = new ArrayList<Entidade>();
ContextoBean contextoBean = ContextoUtil.getContextoBean();
EntidadeRN entidadeRN = new EntidadeRN();
this.lista = entidadeRN.listar(contextoBean.getUsuarioLogado());
for(Entidade e : this.lista){
if(e.getNome().startsWith(query)){
sugestoes.add(e);
}
}
return sugestoes;
}
public List<SelectItem> getEntidadeSelect() {
if(this.entidadeSelect == null){
this.entidadeSelect = new ArrayList<SelectItem>();
ContextoBean contextoBean = ContextoUtil.getContextoBean();
EntidadeRN entidadeRN = new EntidadeRN();
List<Entidade> entidade = entidadeRN.listar(contextoBean.getUsuarioLogado());
SelectItem item = null;
for (Entidade enti : entidade){
item = new SelectItem(enti,enti.getApelido());
item.setEscape(false);
entidadeSelect.add(item);
}
}
return entidadeSelect;
}
public Entidade getselecionada() {
return this.selecionada;
}
public void setselecionada(Entidade selecionada) {
this.selecionada = selecionada;
}
public List<Entidade> getLista() {
if (this.lista == null){
ContextoBean contextoBean = ContextoUtil.getContextoBean();
EntidadeRN entidadeRN = new EntidadeRN();
this.lista = entidadeRN.listar(contextoBean.getUsuarioLogado());
}
return lista;
}
public void setLista(List<Entidade> lista) {
this.lista = lista;
}
public void editar() {
this.tab = 1;
}
public void novo(){
this.selecionada = new Entidade();
this.selecionada.setDataCadastro(new Date(System.currentTimeMillis()));
}
public void excluir(){
EntidadeRN entidadeRN = new EntidadeRN();
this.selecionada = entidadeRN.carregar(this.selecionada.getCodigo());
entidadeRN.excluir(this.selecionada);
this.selecionada = new Entidade();
this.lista = null;
this.tab = 0;
}
}
Agora o lancamento
package financeiro.web;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;
import javax.faces.bean.ViewScoped;
import java.util.*;
import financeiro.categoria.Categoria;
import financeiro.conta.Conta;
import financeiro.lancamento.*;
import financeiro.entidade.*;
import financeiro.web.util.ContextoUtil;
@ManagedBean(name=lancamentoBean)
@RequestScoped
public class LancamentoBean {
private List<Lancamento> lista;
private List<Lancamento> listaAteHoje;
private List<Lancamento> listaFuturos;
public List<Lancamento> getListaAteHoje() {
if(this.listaAteHoje == null){
ContextoBean contextoBean = ContextoUtil.getContextoBean();
Conta conta = contextoBean.getContaAtiva();
Calendar hoje = new GregorianCalendar();
LancamentoRN lancamentoRN = new LancamentoRN();
this.listaAteHoje =lancamentoRN.listar(conta,null,hoje.getTime());
}
return this.listaAteHoje;
}
public void setListaAteHoje(List<Lancamento> listaAteHoje) {
this.listaAteHoje = listaAteHoje;
}
public List<Lancamento> getListaFuturos() {
if(this.listaFuturos == null){
ContextoBean contextoBean = ContextoUtil.getContextoBean();
Conta conta = contextoBean.getContaAtiva();
Calendar amanha = new GregorianCalendar();
amanha.add(Calendar.DAY_OF_MONTH,1);
LancamentoRN lancamentoRN = new LancamentoRN();
this.listaFuturos =lancamentoRN.listar(conta,amanha.getTime(),null);
}
return this.listaFuturos;
}
public void setListaFuturos(List<Lancamento> listaFuturos) {
this.listaFuturos = listaFuturos;
}
private List<Double> saldos = new ArrayList<Double>();
private float saldoGeral;
private Lancamento editado = new Lancamento();
public List<Double> getSaldos() {
return saldos;
}
public void setSaldos(List<Double> saldos) {
this.saldos = saldos;
}
public float getSaldoGeral() {
return saldoGeral;
}
public void setSaldoGeral(float saldo) {
this.saldoGeral = saldo;
}
public LancamentoBean(){
this.novo();
}
public void novo(){
this.editado = new Lancamento();
EntidadeRN entidadeRN = new EntidadeRN();
this.editado.setData(new Date(System.currentTimeMillis()));
}
public void editar(){
}
public void salvar(){
ContextoBean contextoBean = ContextoUtil.getContextoBean();
this.editado.setUsuario(contextoBean.getUsuarioLogado());
this.editado.setConta(contextoBean.getContaAtiva());
EntidadeRN entidadeRN = new EntidadeRN();
this.editado.setEntidade(entidadeRN.carregar(1));
LancamentoRN lancamentoRN = new LancamentoRN();
lancamentoRN.salvar(this.editado);
this.novo();
this.lista = null;
}
public void excluir(){
LancamentoRN lancamentoRN = new LancamentoRN();
this.editado = lancamentoRN.carregar(this.editado.getLancamento());
lancamentoRN.excluir(this.editado);
this.lista = null;
}
public List<Lancamento> getLista(){
if(this.lista == null){
ContextoBean contextoBean = ContextoUtil.getContextoBean();
Conta conta = contextoBean.getContaAtiva();
Calendar dataSaldo = new GregorianCalendar();
dataSaldo.add(Calendar.MONTH,-1);
dataSaldo.add(Calendar.DAY_OF_MONTH,-1);
Calendar inicio = new GregorianCalendar();
inicio.add(Calendar.MONTH,-1);
LancamentoRN lancamentoRN = new LancamentoRN();
this.saldoGeral = lancamentoRN.saldo(conta,dataSaldo.getTime());
this.lista = lancamentoRN.listar(conta,inicio.getTime(),null);
Categoria categoria = null;
double saldo = this.saldoGeral;
for(Lancamento lancamento :this.lista){
categoria = lancamento.getCategoria();
saldo = saldo +(lancamento.getValor().floatValue() * categoria.getFator());
this.saldos.add(saldo);
}
}
return this.lista;
}
public void setLista(List<Lancamento> lista) {
this.lista = lista;
}
public Lancamento getEditado() {
return editado;
}
public void setEditado(Lancamento selecionado) {
this.editado = selecionado;
}
}
Gostei + 0
01/02/2012
Dyego Carmo
Será que vc nao esta mantendo um cache forçado dele ?
Tente trocar para escopo de pagina
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)