Autor |
Mensagem |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 05/07/2007 18:54:22
|
Igor.Costa
MultiAction
Membro desde: 22/06/2007 15:13:22
Mensagens: 79
Localização: Vitória da Conquista - BA
Offline
|
oi gente,
queria saber como eu faria no Neo para montar uma tela em que eu pudesse Alterar varias linhas de uma tabela de resultados de uma vez só.
É possivel isso?
|
Igor Costa
MasterSoft Sistemas Ltda.
 |
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 05/07/2007 19:13:19
|
rogel.garcia
Xiita
Membro desde: 17/04/2007 16:35:03
Mensagens: 275
Offline
|
É possível mas não tem template pronto para isso.. (a não ser o detalhe, que ainda não tem screen cast mostrando).
Vou dar uma idéia de comoo seria feito sem template.
Você precisaria dos seguintes beans
Code:
public class Model {
List<Pessoa> listaPessoa;
... getters e setters...
}
//o bean da tabela que quer editar
@Entity
... etc...
public class Pessoa {
.....
String nome;
}
um controller mais ou menos assim:
Code:
public class ControllerPessoa extends MultiactionController {
pulic ModelAndView pagina(WebRequestContext request, Model model) {
request.setAttribute("model", model);
return new ModelAndView("pagina");
}
public ModelAndView salvarEmMassa(WebRequestContext request, Model model) {
... salva aqui os beans da lista (model.listaPessoa)....
return pagina(request, model);
}
}
e a pagina.jsp
Code:
<n:form>
<n:bean name="model">
<n:dataGrid property="listaPessoa">
<t:property name="id" mode="input"/>
<t:property name="nome" mode="input"/>
.....
</n:dataGrid>
<n:submit action="salvarEmMassa">Enviar</n:submit>
</n:bean>
</n:form>
vc pode usar o template t:tela para incluir o form e montar o layout da tela (é só englobar todo o código com t:tela e retirar o n:form)
|
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 05/07/2007 19:14:24
|
Igor.Costa
MultiAction
Membro desde: 22/06/2007 15:13:22
Mensagens: 79
Localização: Vitória da Conquista - BA
Offline
|
obrigado, vou tentar aqui.
vlw
|
Igor Costa
MasterSoft Sistemas Ltda.
 |
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 06/07/2007 17:36:57
|
Igor.Costa
MultiAction
Membro desde: 22/06/2007 15:13:22
Mensagens: 79
Localização: Vitória da Conquista - BA
Offline
|
oi,
não estou conseguindo visualizar a pagina...
Ele exibe a pagina Base.jsp pura, sem nenhuma listagem...
Controller
Code:
package pfp.controller;
import org.springframework.web.servlet.ModelAndView;
import pfp.bean.transiente.PagamentoMensalLista;
import br.com.linkcom.neo.controller.Controller;
import br.com.linkcom.neo.controller.DefaultAction;
import br.com.linkcom.neo.controller.MultiActionController;
import br.com.linkcom.neo.core.web.WebRequestContext;
@Controller(path="/modulo/operacoes/PagamentoMensalMassa")
public class ControllerPagamentoMensal extends MultiActionController {
@DefaultAction
public ModelAndView pagamentoMensalLista(WebRequestContext request, PagamentoMensalLista pagamentoMensalLista) {
request.setAttribute("pagamentoMensalLista", pagamentoMensalLista);
return new ModelAndView("pagamentoMensalListaPagina");
}
public ModelAndView salvarPagamentoEmMassa(WebRequestContext request, PagamentoMensalLista pagamentoMensalLista) {
//Salvar os bea aqui...
return pagamentoMensalLista(request, pagamentoMensalLista);
}
}
Pagina
Code:
<%@ taglib prefix="n" uri="neo"%>
<%@ taglib prefix="t" uri="template"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
TESTE
<!-- <n:form>-->
<t:tela titulo="Pagamento Mensal Em Massa">
<n:bean name="pagamentoMensalLista">
<n:dataGrid property="listaPagamento">
<t:property name="numeroMes" mode="input"/>
<t:property name="numeroAno" mode="input"/>
<t:property name="numeroFaltas" mode="input"/>
<t:property name="ehPago" mode="input"/>
<t:property name="valorHoraAula" mode="input"/>
<t:property name="horasAula" mode="input"/>
<t:property name="disciplinaTurma" mode="input"/>
</n:dataGrid>
<n:submit action="salvarEmMassa">Enviar</n:submit>
</n:bean>
</n:form>
</t:tela>
e o bean
Code:
package pfp.bean.transiente;
import java.util.List;
import pfp.bean.PagamentoMensal;
public class PagamentoMensalLista {
List<PagamentoMensal> listaPagamento;
public List<PagamentoMensal> getListaPagamento() {
return listaPagamento;
}
public void setListaPagamento(List<PagamentoMensal> listaPagamento) {
this.listaPagamento = listaPagamento;
}
}
|
Igor Costa
MasterSoft Sistemas Ltda.
 |
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 06/07/2007 19:09:44
|
rogel.garcia
Xiita
Membro desde: 17/04/2007 16:35:03
Mensagens: 275
Offline
|
onde vc colocou seu arquivo pagamentoMensalListaPagina.jsp?
|
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 09/07/2007 17:36:03
|
Igor.Costa
MultiAction
Membro desde: 22/06/2007 15:13:22
Mensagens: 79
Localização: Vitória da Conquista - BA
Offline
|
oi,
consegui redirecionar pra pagina, era erro de configuração...
só que quando eu rediciono pra pagian dá o segunte erro:
Code:
Invalid property 'pagamentoMensal' of bean class [java.util.ArrayList]: Bean property 'pagamentoMensal' is not readable or has an invalid getter method: Does the return type of the getter match the parameter type of the setter?
A pagina é:
Code:
<t:tela titulo="Pagamento Mensal Em Massa">
<n:bean name="pagamentoMensalLista">
<n:dataGrid property="pagamentoMensal">
<t:property name="numeroMes" mode="input"/>
<t:property name="numeroAno" mode="input"/>
<t:property name="numeroFaltas" mode="input"/>
<t:property name="ehPago" mode="input"/>
<t:property name="valorHoraAula" mode="input"/>
<t:property name="horasAula" mode="input"/>
<t:property name="disciplinaTurma" mode="input"/>
</n:dataGrid>
<n:submit action="salvarEmMassa">Enviar</n:submit>
</n:bean>
</t:tela>
e redireciono ela no Controller assim:
Code:
public ModelAndView pagamentoMensalLista(WebRequestContext request) {
request.setAttribute("pagamentoMensalLista", pagamentoMensalService.findAll());
return new ModelAndView("operacoes/pagamentoMensalListaPagina");
|
Igor Costa
MasterSoft Sistemas Ltda.
 |
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 09/07/2007 17:59:16
|
pedro.goncalves
Equipe
Membro desde: 17/04/2007 16:12:20
Mensagens: 539
Localização: Belo Horizonte - MG
Offline
|
Troca por isso aqui:
Code:
<t:tela titulo="Pagamento Mensal Em Massa">
<n:dataGrid itens="${pagamentoMensalLista}" valueType="<% =Bean.class%>">
<t:property name="numeroMes" mode="input"/>
<t:property name="numeroAno" mode="input"/>
<t:property name="numeroFaltas" mode="input"/>
<t:property name="ehPago" mode="input"/>
<t:property name="valorHoraAula" mode="input"/>
<t:property name="horasAula" mode="input"/>
<t:property name="disciplinaTurma" mode="input"/>
</n:dataGrid>
<n:submit action="salvarEmMassa">Enviar</n:submit>
</t:tela>
Acredito que esteja ok... eu não abri o eclipse para testar =p
|
Pedro Gonçalves
http://pedrogoncalves.com.br
 |
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 09/07/2007 18:17:08
|
Igor.Costa
MultiAction
Membro desde: 22/06/2007 15:13:22
Mensagens: 79
Localização: Vitória da Conquista - BA
Offline
|
e ae pedro blza?
A <t:property/> não tem que estar dentro de alguma outra coisa???
Pq ele dá o seguinte erro:
Code:
NullPointerException: Tag property (numeroMes) não está aninhada a uma outra tag Property ou Bean
vlw
|
Igor Costa
MasterSoft Sistemas Ltda.
 |
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 09/07/2007 18:19:24
|
pedro.goncalves
Equipe
Membro desde: 17/04/2007 16:12:20
Mensagens: 539
Localização: Belo Horizonte - MG
Offline
|
Poe assim:
Code:
<n:dataGrid itens="${pagamentoMensalLista}" var="nomedobean" itemType="<% =Bean.class%>">
|
Pedro Gonçalves
http://pedrogoncalves.com.br
 |
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 09/07/2007 18:19:59
|
rogel.garcia
Xiita
Membro desde: 17/04/2007 16:35:03
Mensagens: 275
Offline
|
No controller vc deve enviar para o JSP um bean com a lista. E não a lista diretamente
Code:
PagamentoMensalLista pagamentoMensalLista = new PagamentoMensalLista();
pagamentoMensalLista.setListaPagamento(pagamentoMensalService.findAll());
request.setAttribute("pagamentoMensalLista", pagamentoMensalLista);
Dessa forma, o código seguinte funcionará corretamente
Code:
<n:bean name="pagamentoMensalLista">
<n:dataGrid property="listaPagamento">
A linha 1 do exemplo pegará o atributo do escopo pagamentoMensalLista e colocará no bean. A linha 2 utilizará a propriedade listaPagamento do bean para montar o datagrid.
|
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 09/07/2007 18:32:45
|
Igor.Costa
MultiAction
Membro desde: 22/06/2007 15:13:22
Mensagens: 79
Localização: Vitória da Conquista - BA
Offline
|
grande Rogel!
Entendi minha mancada! hehe Valew Funcionou blza!!
obrigado.
|
Igor Costa
MasterSoft Sistemas Ltda.
 |
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 11/07/2007 11:41:29
|
Igor.Costa
MultiAction
Membro desde: 22/06/2007 15:13:22
Mensagens: 79
Localização: Vitória da Conquista - BA
Offline
|
Estou tendo só um problema:
Para Salvar a lista, eu chamo a action salvarPagamentoEmMassa
Code:
public ModelAndView salvarPagamentoEmMassa(WebRequestContext request, PagamentoMensalLista pagamentoMensalLista)
{
pagamentoMensalService.saveLista(pagamentoMensalLista);
return pagamentoMensalLista(request);
}
Só que o Command pagamentoMensalLista tá chegando null.
O que eu devo fazer?
|
Igor Costa
MasterSoft Sistemas Ltda.
 |
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 11/07/2007 13:08:02
|
pedro.goncalves
Equipe
Membro desde: 17/04/2007 16:12:20
Mensagens: 539
Localização: Belo Horizonte - MG
Offline
|
Manda o seu jsp
|
Pedro Gonçalves
http://pedrogoncalves.com.br
 |
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 11/07/2007 13:12:00
|
Igor.Costa
MultiAction
Membro desde: 22/06/2007 15:13:22
Mensagens: 79
Localização: Vitória da Conquista - BA
Offline
|
JSP da Lista:
Code:
<%@ taglib prefix="n" uri="neo"%>
<%@ taglib prefix="t" uri="template"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<t:tela titulo="Pagamento Mensal Em Massa">
<n:bean name="pagamentoMensalLista">
<n:dataGrid property="listaPagamento">
<t:property name="disciplinaTurma.professor.nome" mode="output"/>
<t:property name="numeroFaltas" mode="input"/>
<t:property name="ehPago" mode="input"/>
<t:property name="horasAula" mode="input"/>
</n:dataGrid>
</n:bean>
<n:submit action="salvarPagamentoEmMassa">Enviar</n:submit>
</t:tela>
|
Igor Costa
MasterSoft Sistemas Ltda.
 |
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 11/07/2007 13:15:38
|
pedro.goncalves
Equipe
Membro desde: 17/04/2007 16:12:20
Mensagens: 539
Localização: Belo Horizonte - MG
Offline
|
testa assim:
Code:
<t:tela titulo="Pagamento Mensal Em Massa">
<n:bean name="pagamentoMensalLista">
<n:dataGrid property="listaPagamento">
<n:bean name="pagamento" propertyIndex="${index}" propertyPrefix="listaPagamento">
<t:property name="disciplinaTurma.professor.nome" mode="output"/>
<t:property name="numeroFaltas" mode="input"/>
<t:property name="ehPago" mode="input"/>
<t:property name="horasAula" mode="input"/>
</n:bean>
</n:dataGrid>
</n:bean>
|
Pedro Gonçalves
http://pedrogoncalves.com.br
 |
|
 |
|