Autor |
Mensagem |
|
Ola
gostaria de saber a alteracao a se fazer para filtragem do id/codigo... pois eu só consegui filtrar com strings...
por exemplo: filtragem por nome
Code:
@Override
public void updateListagemQuery(QueryBuilder<Estado> query, FiltroListagem filtro) {
EstadoFiltro estadofiltro = (EstadoFiltro) filtro;
query.whereLikeIgnoreAll("estado.nome", estadofiltro.getNome());
}
obrigado
|
 |
|
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.
|
 |
|
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
|
 |
|
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...
|
 |
|
mesmo erro
|
 |
|
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...
|
 |
|
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>
|
 |
|
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):
---
---
---
---
|
 |
|
Olá, eu to fazendo um projeto de pesquisa na faculdade e "empaquei"....
provavelmente ja foi respondido tvz de alguma outra forma, mas nao estou conseguindo fazer/entender (comecei a pouco tempo com programacao para WEB e com NEO)
tenho tres classes ( Tecnico, Propriedade, e PropriedadeTecnico)
Tecnico
Code:
private Long codigo;
...
private Collection<PropriedadeTecnico> propriedadeTecnicoCollection;
@OneToMany(cascade = CascadeType.ALL, mappedBy = "tecnico")
public Collection<PropriedadeTecnico> getPropriedadeTecnicoCollection() {...}
TecnicoDAO
Code:
public class TecnicoDAO extends GenericDAO<Tecnico>{
@Override
public void updateEntradaQuery(QueryBuilder<Tecnico> query) {
query.fetchCollection("propriedadeTecnicoCollection");
}
@Override
public void updateSaveOrUpdate(SaveOrUpdateStrategy save) {
save.saveOrUpdateManagedNormal("propriedadeTecnicoCollection");
}
}
tecnicoEntrada.jsp
Code:
<t:entrada>
<t:janelaEntrada>
<t:tabelaEntrada>
<t:property name="codigo"/>
<t:property name="nome"/>
....
</t:tabelaEntrada>
<t:detalhe name="propriedadeTecnicoCollection">
<t:property name="propriedade"/>
<t:property name="tecnico"/>
</t:detalhe>
</t:janelaEntrada>
</t:entrada>
PropriedadeTecnico
Code:
private Long codigo;
private Short disponibilidade;
private Propriedade propriedade;
private Tecnico tecnico;
@ManyToOne
public Propriedade getPropriedade() {...}
@ManyToOne
public Propriedade getTecnico() {...}
Propriedade
Code:
private Long codigo;
...
private Collection<PropriedadeTecnico> propriedadeTecnicoCollection;
private Collection<Viveiro> viveiroCollection;
...
@OneToMany(cascade = CascadeType.ALL, mappedBy = "propriedade")
public Collection<PropriedadeTecnico> getPropriedadeTecnicoCollection() {
propriedadeEntrada.jsp
Code:
<t:entrada>
<t:janelaEntrada>
<t:tabelaEntrada>
<t:property name="codigo"/>
<t:property name="area"/>
<t:property name="distancia"/>
</t:tabelaEntrada>
</t:janelaEntrada>
</t:entrada>
agradeço a atençao
...
flw
|
 |
|
Eu poderia utilizar o NEO também para Desktop...???
Obrigado
|
 |
|
Obrigado Pedro e parabens pelo framework
Bem, consegui resolver o problema:
adicionei no URL Relativo (Projeto - propriedades/executar):
/modulo/exemplo
daí funcionou 100%
vlw
|
 |
|
Bem no meu primeiro exemplo tem um problema que nao consegui resolver, ao executar o projeto ele nao aparece nada a nao ser que eu insira
"modulo/exemplo"
depois do endereço
"http://localhost:8084/Hello_Neo-framework/"
ae sim ele funciona...
hehe
aparecendo no browser
"http://localhost:8084/Hello_Neo-framework/modulo/exemplo"
estou usando o netbeans, o que posso fazer pra resolver esse problema?
|
 |
|