Autor |
Mensagem |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 09/07/2007 16:31:37
|
robmsjr
MultiAction
Membro desde: 26/06/2007 19:30:49
Mensagens: 88
Offline
|
Primeiramente quero dizer que estou gostando muito do neo e espero que dê bastante certo, inclusive já estou fazendo um projeto em cima dele.
Estou desenvolvendo um gerenciador de conteudo e cheguei em uma tela um pouco complicada e estou com a seguinte duvida (não sei se está fora da ideia deste forum esse tipo de duvida então qlq coisa me desculpem, só estou um pouco desesperado).
Tenho o Bean Home, que tem uma lista de chamadas (cada chamada contem 2 beans:1conteudo e 1tipochamada).
TELA1)
Eu quero que no meu cadastro de home eu possa escolher em um campo text o numero de chamadas, e que quando eu clicar no OK, apareça o numero escolhido de combos de tipo chamada para selecionar e salvar na tabela de chamada.
ex: preencho o formulario e no campo n° chamadas coloco 10 e dou ok, passa para uma tela com 10 combos de tipo chamada o qual seleciono e mando salvar.
TELA2)
A tela 2 é baseado nas informações da tela 1, então escolho uma home em um combo e dou ok, pra cada chamada cadastrada para home selecionada exibirá um combo para escolher um conteudo, onde o label em cima do combo será o nome do tipo chamada.
Desculpe de novo se não for do tema proposto deste forum.
E qualquer ajuda é bem vinda só preciso de uma direção.
abraços;
|
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 09/07/2007 16:39:53
|
pedro.goncalves
Equipe
Membro desde: 17/04/2007 16:12:20
Mensagens: 539
Localização: Belo Horizonte - MG
Offline
|
No caso da tela 1 seria 10 combos com informações vindas do banco ou seria combos em branco?
você pode fazer um loop na sua lista montando os select's
|
Pedro Gonçalves
http://pedrogoncalves.com.br
 |
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 09/07/2007 16:57:53
|
robmsjr
MultiAction
Membro desde: 26/06/2007 19:30:49
Mensagens: 88
Offline
|
posso sim, só queria saber como faria os controllers? e viriam do banco.
De qualquer modo eu posso fazer as telas mais dificeis com o spring mvc normal... agora onde eu indico meus controllers e dados que ficam nos xmls utilizados pelo spring e que não são usados pelo neo? É só criar os xmls que o neo não confunde?
|
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 09/07/2007 17:02:07
|
pedro.goncalves
Equipe
Membro desde: 17/04/2007 16:12:20
Mensagens: 539
Localização: Belo Horizonte - MG
Offline
|
O neo é o spring mvc.. o que o spring mvc tem o neo tem..
entao nao faz sentido vc usar o spring mvc puro para isso..
para utilizar o controller simples, basta criar uma classe que estenda multiaction controller..
De uma olhada na documentação. Capítulo MVC.
http://www.neoframework.org/dist/documentacao/index.html
Eu não estou entendendo direito como você quer a tela. está meio confuso;
té!
|
Pedro Gonçalves
http://pedrogoncalves.com.br
 |
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 09/07/2007 18:35:34
|
rogel.garcia
Xiita
Membro desde: 17/04/2007 16:35:03
Mensagens: 275
Offline
|
Coloque um Integer no seu bean para setar o número de chamadas.
Crie um n:submit para enviar os dados para o servidor..
<n:submit action="montarLista"/>
Crie um método montarLista no controller para receber o bean.. Nesse método vc adiciona as Chamadas a lista do bean e redireciona para a página para o usuário escolher as chamadas
Na outra página utilize um c:forEach para criar vários inputs de chamada
dentro do forEach vc coloca
<c:forEach .... varStatus="status">
<t:property name="chamadas[${status.index}]" />
</c:forEach>
O JSP vai ficar mais ou menos assim:
<select name="chamadas[0]">.....</select>
<select name="chamadas[1]">.....</select>
<select name="chamadas[2]">.....</select>
<select name="chamadas[3]">.....</select>
<select name="chamadas[4]">.....</select>
<select name="chamadas[5]">.....</select>
E isso pode ser mapeado para o bean novamente...
|
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 09/07/2007 18:36:23
|
rogel.garcia
Xiita
Membro desde: 17/04/2007 16:35:03
Mensagens: 275
Offline
|
O bean seria mais ou menos assim:
Code:
class Home {
Integer numeroChamdas;//campo para setar as chamadas
List<Chamada> chamadas; // lista de chamadas
}
|
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 09/07/2007 19:16:41
|
rogel.garcia
Xiita
Membro desde: 17/04/2007 16:35:03
Mensagens: 275
Offline
|
PS.: Qualquer dúvida pode ser colocada aqui. Tentaremos ajudar sempre que possível
Valew
|
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 09/07/2007 23:49:53
|
robmsjr
MultiAction
Membro desde: 26/06/2007 19:30:49
Mensagens: 88
Offline
|
Valeu mesmo pela ajuda, me esclaresceu muito.
Só pude olhar agora, então amanhã estarei tentando implementar.
abraços
|
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 10/07/2007 11:21:39
|
robmsjr
MultiAction
Membro desde: 26/06/2007 19:30:49
Mensagens: 88
Offline
|
Estou começando a implementar aqui e me surgiu uma nova duvida...
Eu estou montando meu controller e gostaria que na minha view tivesse um combo de canal e subcanal para serem selecionados...como faço para passar as listas para ela?
como sempre obrigado pela ajuda.
|
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 10/07/2007 11:24:21
|
pedro.goncalves
Equipe
Membro desde: 17/04/2007 16:12:20
Mensagens: 539
Localização: Belo Horizonte - MG
Offline
|
Dentro da tag property tem uma propriedade chamada itens..
você pode passar assim:
<t:property itens="${lista}" ... />
|
Pedro Gonçalves
http://pedrogoncalves.com.br
 |
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 10/07/2007 11:44:18
|
robmsjr
MultiAction
Membro desde: 26/06/2007 19:30:49
Mensagens: 88
Offline
|
na verdade minha duvida é como no controler eu passo a lista para o view.
no meu caso estou tentando assim:
Code:
@DefaultAction
public ModelAndView escolherCanal(WebRequestContext request){
List<Canal> lCanal = canalService.findAll();
request.setAttribute("canal", lCanal);
return new ModelAndView("homeSelecionar","canal",lCanal);
}
tentei passar de dois modos diferentes e mesmo assim quando vou ler na view está dando esse erro:
Code:
javax.servlet.jsp.el.ELException: Encountered "}", expected one of [<INTEGER_LITERAL>, <FLOATING_POINT_LITERAL>, <STRING_LITERAL>, "true", "false", "null", "(", "-", "not", "!", "empty", <IDENTIFIER>]
at org.apache.commons.el.ExpressionEvaluatorImpl.parseExpressionString(ExpressionEvaluatorImpl.java:320)
at ...
ai achei que eu estava passando errado
|
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 10/07/2007 12:27:17
|
robmsjr
MultiAction
Membro desde: 26/06/2007 19:30:49
Mensagens: 88
Offline
|
Show...
Acabei de descobrir que mesmo no MultiActionController basta eu passar o bean que possui outro bean que ele traz a lista do filho automatico igual a tela de CRUD.
gostei muito.
abraços;
|
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 10/07/2007 15:14:29
|
robmsjr
MultiAction
Membro desde: 26/06/2007 19:30:49
Mensagens: 88
Offline
|
Me bati um pouco com a implementação mas está quase saindo, só uma duvida pequena agora,
minha view:
Code:
<t:tela titulo="Definir Home">
<n:bean name="home">
<n:comboReloadGroup useAjax="true">
<t:property label="canal" name="canal" mode="input"/>
<t:property label="subcanal" name="subcanal" mode="input"/>
</n:comboReloadGroup> <br>
<t:property label="num. de chamadas:" name="numeroChamadas" mode="input"/><br>
<!-- t:property label="num. de chamadas:" name="nChamadas" mode="input"/-->
<n:submit action="definirHome" description="definir chamadas"/>
</n:bean>
</t:tela>
Coloquei o label em todos os campos imaginando que iria aparecer o nome em cima ou do lado do box de input... mas não está aparecendo nada só o box e o botão tambem está vazio...funciona mas os meus textos de descrição n aparecem.
o que pode ser isso?
|
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 10/07/2007 16:19:49
|
pedro.goncalves
Equipe
Membro desde: 17/04/2007 16:12:20
Mensagens: 539
Localização: Belo Horizonte - MG
Offline
|
Experimente isso:
Code:
<t:tela titulo="Definir Home">
<n:bean name="home">
<n:panelGrid columns="2">
<t:propertyConfig mode="input" renderAs="double" showLabel="true">
<n:comboReloadGroup useAjax="true">
<t:property label="canal" name="canal" mode="input"/>
<t:property label="subcanal" name="subcanal" mode="input"/>
</n:comboReloadGroup>
<t:property label="num. de chamadas:" name="numeroChamadas" mode="input"/>
<n:panel colspan="2"><n:submit action="definirHome" description="definir chamadas"/></n:panel>
</t:propertyConfig>
</n:panelGrid>
</n:bean>
</t:tela>
|
Pedro Gonçalves
http://pedrogoncalves.com.br
 |
|
 |
![[Post New]](/forum/templates/default/images/icon_minipost_new.gif) 10/07/2007 16:27:24
|
robmsjr
MultiAction
Membro desde: 26/06/2007 19:30:49
Mensagens: 88
Offline
|
Funcionou legal, só ficou faltando o texto do botão.
|
|
 |
|