[Logo] Neo Framework Forum
  [Search] Busca   [Recent Topics] Tópicos Recentes   [Members]  Lista de Usuários   [Groups] De volta para a página principal 
[Register] Registrar / 
[Login] Entrar 
CRUD Master-Detalhe  XML
Índice dos Fóruns -> Dúvidas Ir para a página: Anterior  1, 2, 3, 4 Próximo 
Autor Mensagem
pedro.goncalves
Equipe
[Avatar]
Membro desde: 17/04/2007 16:12:20
Mensagens: 539
Localização: Belo Horizonte - MG
Offline

o que está errado é: Code:
query.fetchCollection("propriedadeTecnicoCollection");
 

troca por
Code:
query.leftOuterJoinFetch("bean.propriedadeTecnicoCollection propriedadeTecnicoCollection");


e mude também em:
Code:
  save.saveOrUpdateManagedNormal("propriedadeTecnicoCollection");
 


para
Code:
  save.saveOrUpdateManaged("propriedadeTecnicoCollection");
 

Pedro Gonçalves
http://pedrogoncalves.com.br
[Email] [WWW] [MSN]
tlink.k
Equipe
[Avatar]

Membro desde: 28/09/2007 16:06:19
Mensagens: 12
Offline

ola..
quando eu clico em criar aparece a aba Propriedade Tecnico Collection, vou em nova linha selecionoo tecnico e aparece o seguinte erro:

Code:
 org.springframework.beans.NullValueInNestedPathException: Invalid property 'propriedadeTecnicoCollection[0]' of bean class [bean.Propriedade]: Cannot access indexed value of property referenced in indexed property path 'propriedadeTecnicoCollection[0]': returned null
 	br.com.linkcom.neo.controller.ExtendedBeanWrapper.getPropertyValue(ExtendedBeanWrapper.java:737)
 	br.com.linkcom.neo.controller.ExtendedBeanWrapper.getNestedBeanWrapper(ExtendedBeanWrapper.java:587)
 	br.com.linkcom.neo.controller.ExtendedBeanWrapper.getBeanWrapperForPropertyPath(ExtendedBeanWrapper.java:565)
 	br.com.linkcom.neo.controller.ExtendedBeanWrapper.setPropertyValue(ExtendedBeanWrapper.java:847)
 	br.com.linkcom.neo.controller.ExtendedBeanWrapper.setPropertyValue(ExtendedBeanWrapper.java:1078)
 	br.com.linkcom.neo.controller.ExtendedBeanWrapper.setPropertyValues(ExtendedBeanWrapper.java:1105)
 	org.springframework.validation.DataBinder.applyPropertyValues(DataBinder.java:418)
 	org.springframework.validation.DataBinder.doBind(DataBinder.java:325)
 	org.springframework.web.bind.WebDataBinder.doBind(WebDataBinder.java:122)
 	br.com.linkcom.neo.controller.ServletRequestDataBinderNeo.doBind(ServletRequestDataBinderNeo.java:122)
 	org.springframework.web.bind.ServletRequestDataBinder.bind(ServletRequestDataBinder.java:131)
 	br.com.linkcom.neo.controller.MultiActionController.bind(MultiActionController.java:721)
 	br.com.linkcom.neo.controller.MultiActionController.invokeNamedMethod(MultiActionController.java:476)
 	br.com.linkcom.neo.controller.MultiActionController.handleRequestInternal(MultiActionController.java:367)
 	org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:139)
 	org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:44)
 	org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:717)
 	org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:658)
 	br.com.linkcom.neo.controller.DispatcherServlet.doService(DispatcherServlet.java:59)
 	org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:392)
 	org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:357)
 	javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
 	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
 	br.com.linkcom.neo.core.web.NeoFilter.doFilter(NeoFilter.java:95)
 	org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:368)
 


e em vez de clicar em criar ir em editar

Code:
     * Invalid path: 'bean.propriedadeTecnicoCollection' [SELECT propriedade FROM bean.Propriedade propriedade LEFT OUTER JOIN FETCH propriedade.piscicultor LEFT OUTER JOIN FETCH bean.propriedadeTecnicoCollection propriedadeTecnicoCollection WHERE propriedade.codigo = ?]; nested exception is org.hibernate.hql.ast.QuerySyntaxException: Invalid path: 'bean.propriedadeTecnicoCollection' [SELECT propriedade FROM bean.Propriedade propriedade LEFT OUTER JOIN FETCH propriedade.piscicultor LEFT OUTER JOIN FETCH bean.propriedadeTecnicoCollection propriedadeTecnicoCollection WHERE propriedade.codigo = ?]
           o Invalid path: 'bean.propriedadeTecnicoCollection' [SELECT propriedade FROM bean.Propriedade propriedade LEFT OUTER JOIN FETCH propriedade.piscicultor LEFT OUTER JOIN FETCH bean.propriedadeTecnicoCollection propriedadeTecnicoCollection WHERE propriedade.codigo = ?]
           o Invalid path: 'bean.propriedadeTecnicoCollection'
 
 


a tela propriedade, propriedadeTecnico e Tecnico... funcionam blz, porem eu gostaria de fazer assim por exemplo:

na tela propriedade:

area:
Distancia:
Pisicultor: <combo>

Tecnicos (tabela):
---
---
---
---






tlink.k
Equipe
[Avatar]

Membro desde: 28/09/2007 16:06:19
Mensagens: 12
Offline

Classes:

PropriedadeDAO:
Code:
 public class PropriedadeDAO extends GenericDAO<Propriedade>{
     @Override
     public void updateListagemQuery(QueryBuilder<Propriedade> query, FiltroListagem filtro) {
         query.leftOuterJoinFetch("propriedade.piscicultor");
     }
     @Override
     public void updateEntradaQuery(QueryBuilder<Propriedade> query){
         query.leftOuterJoinFetch("propriedade.piscicultor");
         query.leftOuterJoinFetch("bean.propriedadeTecnicoCollection propriedadeTecnicoCollection");
     }
     @Override
     public void updateSaveOrUpdate(SaveOrUpdateStrategy save) {
         save.saveOrUpdateManaged("propriedadeTecnicoCollection");
     }   
 }
 


PropriedadeTecnicoDAO:

Code:
 public class PropriedadeTecnicoDAO extends GenericDAO<PropriedadeTecnico>{
    @Override
     public void updateListagemQuery(QueryBuilder<PropriedadeTecnico> query, FiltroListagem filtro) {
         query.leftOuterJoinFetch("propriedadeTecnico.tecnico");
         query.leftOuterJoinFetch("propriedadeTecnico.propriedade");
     }
    @Override
    public void updateEntradaQuery(QueryBuilder<PropriedadeTecnico> query){
       query.leftOuterJoinFetch("propriedadeTecnico.tecnico");
       query.leftOuterJoinFetch("propriedadeTecnico.propriedade");
    } 
 }
 


propriedadeListagem.jsp e propriedadeEntrada.jsp:

Code:
 <t:listagem>
     <t:janelaResultados>
         <t:tabelaResultados>
             <t:property name="codigo"/>
             <t:property name="area"/>
             <t:property name="distancia"/>
             <t:property name="piscicultor"/>
         </t:tabelaResultados>
     </t:janelaResultados>
 </t:listagem>
 
 
 
 <t:entrada>
     <t:janelaEntrada>
         <t:tabelaEntrada>
             <t:property name="codigo"/>
             <t:property name="area"/>
             <t:property name="distancia"/>
             <t:property name="piscicultor"/>
         </t:tabelaEntrada>
         <t:detalhe name="propriedadeTecnicoCollection">
              <t:property name="tecnico"/>
          </t:detalhe>
     </t:janelaEntrada>
 </t:entrada>
 





pedro.goncalves
Equipe
[Avatar]
Membro desde: 17/04/2007 16:12:20
Mensagens: 539
Localização: Belo Horizonte - MG
Offline

Este erro que está aparecendo é porque a propriedade "propriedadeTecnicoCollection" não está mapeada corretamente.


Dê uma olhada aqui: http://www.neoframework.org/forum/posts/list/15/121.page. segunda página no post do alexcampos.

Pedro Gonçalves
http://pedrogoncalves.com.br
[Email] [WWW] [MSN]
tlink.k
Equipe
[Avatar]

Membro desde: 28/09/2007 16:06:19
Mensagens: 12
Offline



Classe Propriedade
Code:
 
 @JoinColumn(name = "PISCICULTOR", referencedColumnName = "CODIGO")
 @ManyToOne
 public Piscicultor getPiscicultor() {
         return this.piscicultor;
     }
 
 @OneToMany(cascade = CascadeType.ALL, mappedBy = "propriedade")
     public Collection<PropriedadeTecnico> getPropriedadeTecnicoCollection() {
         return this.propriedadeTecnicoCollection;
     }
 


Classe PropriedadeTecnico
Code:
 @JoinColumn(name = "PROPRIEDADE", referencedColumnName = "CODIGO")
     @ManyToOne
     public Propriedade getPropriedade() {
         return this.propriedade;
     }
 @JoinColumn(name = "TECNICO", referencedColumnName = "CODIGO")
     @ManyToOne
     public Tecnico getTecnico() {
         return this.tecnico;
     }
 


sera que há algum erro?


vlw pela atençao...
pedro.goncalves
Equipe
[Avatar]
Membro desde: 17/04/2007 16:12:20
Mensagens: 539
Localização: Belo Horizonte - MG
Offline

Tente mapear assim:

Code:
 @ManyToOne(fetch=FetchType.LAZY)
 @JoinColumn(name="PISCICULTOR")
 public Piscicultor getPiscicultor() {
          return this.piscicultor;
      }
 

Pedro Gonçalves
http://pedrogoncalves.com.br
[Email] [WWW] [MSN]
tlink.k
Equipe
[Avatar]

Membro desde: 28/09/2007 16:06:19
Mensagens: 12
Offline

mesmo erro
pedro.goncalves
Equipe
[Avatar]
Membro desde: 17/04/2007 16:12:20
Mensagens: 539
Localização: Belo Horizonte - MG
Offline

Cara, qual erro que está dando, em que situação, em que linha.. poste a stack trace.

Sem isso é impossível descobrir!

Pedro Gonçalves
http://pedrogoncalves.com.br
[Email] [WWW] [MSN]
tlink.k
Equipe
[Avatar]

Membro desde: 28/09/2007 16:06:19
Mensagens: 12
Offline

o erro é aquele q eu postei logo acima:

Code:
  org.springframework.beans.NullValueInNestedPathException: Invalid property 'propriedadeTecnicoCollection[0]' of bean class [bean.Propriedade]: Cannot access indexed value of property referenced in indexed property path 'propriedadeTecnicoCollection[0]': returned null
  	br.com.linkcom.neo.controller.ExtendedBeanWrapper.getPropertyValue(ExtendedBeanWrapper.java:737)
  	br.com.linkcom.neo.controller.ExtendedBeanWrapper.getNestedBeanWrapper(ExtendedBeanWrapper.java:587)
  	br.com.linkcom.neo.controller.ExtendedBeanWrapper.getBeanWrapperForPropertyPath(ExtendedBeanWrapper.java:565)
  	br.com.linkcom.neo.controller.ExtendedBeanWrapper.setPropertyValue(ExtendedBeanWrapper.java:847)
  	br.com.linkcom.neo.controller.ExtendedBeanWrapper.setPropertyValue(ExtendedBeanWrapper.java:1078)
  	br.com.linkcom.neo.controller.ExtendedBeanWrapper.setPropertyValues(ExtendedBeanWrapper.java:1105)
  	org.springframework.validation.DataBinder.applyPropertyValues(DataBinder.java:418)
  	org.springframework.validation.DataBinder.doBind(DataBinder.java:325)
  	org.springframework.web.bind.WebDataBinder.doBind(WebDataBinder.java:122)
  	br.com.linkcom.neo.controller.ServletRequestDataBinderNeo.doBind(ServletRequestDataBinderNeo.java:122)
  	org.springframework.web.bind.ServletRequestDataBinder.bind(ServletRequestDataBinder.java:131)
  	br.com.linkcom.neo.controller.MultiActionController.bind(MultiActionController.java:721)
  	br.com.linkcom.neo.controller.MultiActionController.invokeNamedMethod(MultiActionController.java:476)
  	br.com.linkcom.neo.controller.MultiActionController.handleRequestInternal(MultiActionController.java:367)
  	org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:139)
  	org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:44)
  	org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:717)
  	org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:658)
  	br.com.linkcom.neo.controller.DispatcherServlet.doService(DispatcherServlet.java:59)
  	org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:392)
  	org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:357)
  	javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
  	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
  	br.com.linkcom.neo.core.web.NeoFilter.doFilter(NeoFilter.java:95)
  	org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:368)
 


ao SALVAR um novo cadastro...

pedro.goncalves
Equipe
[Avatar]
Membro desde: 17/04/2007 16:12:20
Mensagens: 539
Localização: Belo Horizonte - MG
Offline

cara.. zipa tudo ai pra mim e me manda.. pedro.goncalves@linkcom.com.br

vou ver o que está rolando e te dou um feedback..

teh

Pedro Gonçalves
http://pedrogoncalves.com.br
[Email] [WWW] [MSN]
tlink.k
Equipe
[Avatar]

Membro desde: 28/09/2007 16:06:19
Mensagens: 12
Offline

pedro
ja encaminhei as classes e os jsp's...
esta em .rar qlqr coisa mande-me um e-mail
e obrigado pela paciencia hehe
te
pedro.goncalves
Equipe
[Avatar]
Membro desde: 17/04/2007 16:12:20
Mensagens: 539
Localização: Belo Horizonte - MG
Offline

Tiago..

superficialmente fiz essas alterações..

Teste ai e me diz.. se não der vou rodar a aplicação.

Code:
 PropriedadeDAO:
 
 save.saveOrUpdateManaged("propriedade.propriedadeTecnicoCollection propriedadeTecnicoCollection");
 
 query.leftOuterJoinFetch("propriedade.piscicultor piscicultor");
          query.leftOuterJoinFetch("propriedade.propriedadeTecnicoCollection propriedadeTecnicoCollection");
 
 
 PROPRIEDADEENTRADA.jsp
 <t:entrada>
      <t:janelaEntrada>
          <t:tabelaEntrada>
              <t:property name="codigo"/>
              <t:property name="area"/>
              <t:property name="distancia"/>
              <t:property name="piscicultor"/>
          </t:tabelaEntrada>
          <t:detalhe name="propriedadeTecnicoCollection">
               <t:property name="tecnico"/>
 			  <t:acao>
 					<t:property name="codigo" type="hidden" write="false" renderas="single"/>
 			  </t:acao>
           </t:detalhe>
      </t:janelaEntrada>
  </t:entrada>
 

Pedro Gonçalves
http://pedrogoncalves.com.br
[Email] [WWW] [MSN]
tlink.k
Equipe
[Avatar]

Membro desde: 28/09/2007 16:06:19
Mensagens: 12
Offline

Pedro

Infelizmente nao funcionou... esse é o erro que imprime no browser (o mesmo postado logo acima)

Code:
 type Exception report
 
 message
 
 description The server encountered an internal error () that prevented it from fulfilling this request.
 
 exception
 
 org.springframework.beans.NullValueInNestedPathException: Invalid property 'propriedadeTecnicoCollection[0]' of bean class [bean.Propriedade]: Cannot access indexed value of property referenced in indexed property path 'propriedadeTecnicoCollection[0]': returned null
 	br.com.linkcom.neo.controller.ExtendedBeanWrapper.getPropertyValue(ExtendedBeanWrapper.java:737)
 	br.com.linkcom.neo.controller.ExtendedBeanWrapper.getNestedBeanWrapper(ExtendedBeanWrapper.java:587)
 	br.com.linkcom.neo.controller.ExtendedBeanWrapper.getBeanWrapperForPropertyPath(ExtendedBeanWrapper.java:565)
 	br.com.linkcom.neo.controller.ExtendedBeanWrapper.setPropertyValue(ExtendedBeanWrapper.java:847)
 	br.com.linkcom.neo.controller.ExtendedBeanWrapper.setPropertyValue(ExtendedBeanWrapper.java:1078)
 	br.com.linkcom.neo.controller.ExtendedBeanWrapper.setPropertyValues(ExtendedBeanWrapper.java:1105)
 	org.springframework.validation.DataBinder.applyPropertyValues(DataBinder.java:418)
 	org.springframework.validation.DataBinder.doBind(DataBinder.java:325)
 	org.springframework.web.bind.WebDataBinder.doBind(WebDataBinder.java:122)
 	br.com.linkcom.neo.controller.ServletRequestDataBinderNeo.doBind(ServletRequestDataBinderNeo.java:122)
 	org.springframework.web.bind.ServletRequestDataBinder.bind(ServletRequestDataBinder.java:131)
 	br.com.linkcom.neo.controller.MultiActionController.bind(MultiActionController.java:721)
 	br.com.linkcom.neo.controller.MultiActionController.invokeNamedMethod(MultiActionController.java:476)
 	br.com.linkcom.neo.controller.MultiActionController.handleRequestInternal(MultiActionController.java:367)
 	org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:139)
 	org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:44)
 	org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:717)
 	org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:658)
 	br.com.linkcom.neo.controller.DispatcherServlet.doService(DispatcherServlet.java:59)
 	org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:392)
 	org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:357)
 	javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
 	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
 	br.com.linkcom.neo.core.web.NeoFilter.doFilter(NeoFilter.java:95)
 	org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:368)
 
 note The full stack trace of the root cause is available in the Apache Tomcat/5.5.17 logs.
 
vitorhora
Equipe
[Avatar]

Membro desde: 12/02/2008 17:52:00
Mensagens: 10
Localização: Recife-PE
Offline

Pessoal... estou com um probleminha.
Quero fazer um master-detalhe entre Pais e estados

Seguem os códigos:


Code:
 
 Pais.java
 
 package br.com.webhotel.bean;
 
 import java.util.Collection;
 import java.util.List;
 
 import javax.persistence.CascadeType;
 import javax.persistence.Entity;
 import javax.persistence.GeneratedValue;
 import javax.persistence.GenerationType;
 import javax.persistence.Id;
 import javax.persistence.OneToMany;
 import javax.persistence.SequenceGenerator;
 
 import br.com.linkcom.neo.bean.annotation.DescriptionProperty;
 import br.com.linkcom.neo.validation.annotation.MaxLength;
 
 @Entity
 @SequenceGenerator(name = "gen_pais", sequenceName = "gen_pais")
 public class Pais{
 
 	protected Integer idPais;
 	protected String descricao;
 	protected List<Estado> listaEstados;
 
 	@Id
 	@GeneratedValue(strategy = GenerationType.AUTO, generator = "gen_pais")
 	public Integer getIdPais() {
 		return idPais;
 	}
 
 	@MaxLength(20)
 	@DescriptionProperty
 	public String getDescricao() {
 		return descricao;
 	}
 	
 	@OneToMany(cascade = CascadeType.ALL, mappedBy = "pais")
 	public Collection<Estado> getListaEstados() {
 		return listaEstados;
 	}
 
 
 	public void setIdPais(Integer idPais) {
 		this.idPais = idPais;
 	}
 
 	public void setDescricao(String descricao) {
 		this.descricao = descricao;
 	}
 
 	
 	public void setListaEstados(List<Estado> listaEstados) {
 		this.listaEstados = listaEstados;
 	}
 	
 	
 
 }
 
 
 
 
 
 
 
 Estado.java
 
 
 package br.com.webhotel.bean;
 
 import javax.persistence.Entity;
 import javax.persistence.FetchType;
 import javax.persistence.GeneratedValue;
 import javax.persistence.GenerationType;
 import javax.persistence.Id;
 import javax.persistence.JoinColumn;
 import javax.persistence.ManyToOne;
 import javax.persistence.SequenceGenerator;
 
 import br.com.linkcom.neo.bean.annotation.DescriptionProperty;
 import br.com.linkcom.neo.validation.annotation.MaxLength;
 
 @Entity
 @SequenceGenerator(name = "gen_estado", sequenceName = "gen_estado")
 public class Estado {
 
 	protected Integer idEstado;
 	protected String descricao;
 	protected Pais pais;
 
 	@Id
 	@GeneratedValue(strategy = GenerationType.AUTO, generator = "gen_estado")
 	public Integer getIdEstado() {
 		return idEstado;
 	}
 
 	@MaxLength(20)
 	@DescriptionProperty
 	public String getDescricao() {
 		return descricao;
 	}
 
 	@ManyToOne(fetch = FetchType.LAZY)	
 	@JoinColumn(name = "idPais")
 	public Pais getPais() {
 		return pais;
 	}
 
 	public void setIdEstado(Integer idEstado) {
 		this.idEstado = idEstado;
 	}
 
 	public void setDescricao(String descricao) {
 		this.descricao = descricao;
 	}
 
 	public void setPais(Pais pais) {
 		this.pais = pais;
 	}
 
 }
 
 
 
 
 PaisDAO.java
 
 
 package br.com.webhotel.dao;
 
 import br.com.linkcom.neo.core.standard.Neo;
 import br.com.linkcom.neo.persistence.GenericDAO;
 import br.com.linkcom.neo.persistence.QueryBuilder;
 import br.com.linkcom.neo.persistence.SaveOrUpdateStrategy;
 import br.com.webhotel.bean.Pais;
 
 public class PaisDAO extends GenericDAO<Pais> {
 
 	/* singleton */
 	/*private static PaisDAO instance;
 	public static PaisDAO getInstance() {
 		if(instance == null){
 			instance = Neo.getObject(PaisDAO.class);
 		}
 		return instance;
 	}*/
 	
 	@Override
  	public void updateEntradaQuery(QueryBuilder<Pais> query) {
  		query.fetchCollection("listaEstados");
  	}
  
  	@Override
  	public void updateSaveOrUpdate(SaveOrUpdateStrategy save) {
  		save.saveOrUpdateManagedNormal("listaEstados");
  	}
  
 
 }
 
 
 
 
 EstadoDAO.java
 
 
 package br.com.webhotel.dao;
 
 import br.com.linkcom.neo.core.standard.Neo;
 import br.com.linkcom.neo.persistence.GenericDAO;
 import br.com.webhotel.bean.Estado;
 
 public class EstadoDAO extends GenericDAO<Estado> {
 
 	/* singleton */
 	/*private static EstadoDAO instance;
 	public static EstadoDAO getInstance() {
 		if(instance == null){
 			instance = Neo.getObject(EstadoDAO.class);
 		}
 		return instance;
 	}
 	*/
 	
 }
 
 
 
 
 
 paisEntrada.jsp
 
 
 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
 <%@ taglib prefix="n" uri="neo"%>
 <%@ taglib prefix="t" uri="template"%>
  <t:entrada>
      <t:janelaEntrada>
           <t:tabelaEntrada>
           <t:property name="idPais"/>
                 <t:property name="descricao"/>
           </t:tabelaEntrada>
  
           <t:detalhe name="listaEstados">
                <t:property name="idEstado"/> 
                <t:property name="descricao"/>
           </t:detalhe>
      </t:janelaEntrada>
  </t:entrada>
 
 
 
 paisListagem.jsp
 
 
 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
 <%@ taglib prefix="n" uri="neo"%>
 <%@ taglib prefix="t" uri="template"%>
 
 <t:listagem>     
      <t:tabelaResultados>
           <n:column>
               <t:property name="idPais"/>
               <t:property name="descricao"/>
               <n:dataGrid property="listaEstados">
                     <t:property name="idEstado"/>
                     <t:property name="descricao"/>
               </n:dataGrid>
           </n:column>
      </t:tabelaResultados>  
  </t:listagem>
 
 
 
 
 






Quando salvo o arquivo que ele vai listar aparece:

org.springframework.beans.NullValueInNestedPathException: Invalid property 'listaEstados[0]' of bean class [br.com.webhotel.bean.Pais]: Cannot access indexed value of property referenced in indexed property path 'listaEstados[0]': returned null
br.com.linkcom.neo.controller.ExtendedBeanWrapper.getPropertyValue(ExtendedBeanWrapper.java:737)



E quando entro na tela que ele vai listar os dados tbm aparece:

SEVERE: failed to lazily initialize a collection of role: br.com.webhotel.bean.Pais.listaEstados, no session or session was closed
org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role: br.com.webhotel.bean.Pais.listaEstados, no session or session was closed
at org.hibernate.collection.AbstractPersistentCollection.throwLazyInitializationException(AbstractPersistentCollection.java:358)
at org.hibernate.collection.AbstractPersistentCollection.throwLazyInitializationExceptionIfNotConnected(AbstractPersistentCollection.java:350)



Alguém sabe onde está o erro?





[Email] [MSN]
pedro.goncalves
Equipe
[Avatar]
Membro desde: 17/04/2007 16:12:20
Mensagens: 539
Localização: Belo Horizonte - MG
Offline

Você pode me mandar a aplicação para que eu possar testar?

Pedro Gonçalves
http://pedrogoncalves.com.br
[Email] [WWW] [MSN]
 
Índice dos Fóruns -> Dúvidas Ir para a página: Anterior  1, 2, 3, 4 Próximo 
Ir para:   
Powered by JForum 2.1.7 © JForum Team