[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 
Dúvidas relacionado a Validações, Mensagens e Controllers  XML
Índice dos Fóruns -> Dúvidas
Autor Mensagem
Nunes
Equipe

Membro desde: 30/06/2007 14:28:09
Mensagens: 19
Offline

Olá senhores, tudo bem.
Gostaria de tirar uma dúvida relacionado a validação e controllers.

A primeira é a seguinte: Eu gostaria de validar meus forms no servidor e quando desse um erro eu adicionaria essas mensagens em um objeto.
A idéia é igual a do Struts 1.x que tem o objeto ActionErros e ActionMenssage. Feito isso como eu mostro isso no meu jsp ? E caso ocorra um erro os dados preenchidos são recarregados na tela automaticamente ?

A segunda dúvida é relacionada aos Controllers. Como o Neo roda em cima do Spring MVC, eu por acaso poderia utilizar os controllers do Spring, ou o Neo tem seus próprios controlers ?

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

1° A validação do neo é feita através de annotations, ou no controller você sobrescreve o método validate. Caso necessite. No caso de um crud controller você deverá sobrescrever o método validateBean (Para a entrada de dados) e o validateFilter (Para a listagem dos dados.). Quando utilizar um controller comum do neo, o muliActionController, que é sobrescrito do spring mvc você deverá anotatar os métodos com a annotation @OnErrors, para que o NEO formate automaticamente as mensagens. Na documentação tem isso explicado. Caso esteja incompleta favor dar um toque que completo ela pra ti.

2° Está meio que implícito no primeiro comentário. Os controllers do spring funcionam normalmente, mas é altamente recomendável que utilize a que o neo lhe fornece, pois possui algumas customizações.

Obrigado.

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

Membro desde: 30/06/2007 14:28:09
Mensagens: 19
Offline

E ai Pedro, beleza ?
Deixa eu te fazer mais uma pergunta!

Pelo pouco que eu sei o Spring possui diversos Controllers. Certo ?
Por acaso esses controllers são todos customizados no NEO ?

Sobre a validação, pelo menos no exemplo, quando você coloca as annotations ele faz a mesma via javascript. Porem o que eu quero seria igual ao Struts 1.x, que se tem o objeto ActionErros.

Abraços

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

O neo apenas customizou o MultiActionController. E o spring possui vários controllers sim.

Ok..

Você diz montar um filtro para montar a validação?

Pedro Gonçalves
http://pedrogoncalves.com.br
[Email] [WWW] [MSN]
pedro.goncalves
Equipe
[Avatar]
Membro desde: 17/04/2007 16:12:20
Mensagens: 539
Localização: Belo Horizonte - MG
Offline

Maurício, o neo tem isso sim.

Ex:
Struts:
Code:
     ActionErrors errors = new ActionErrors();
 
    try {
 
      // seu codigo
 
    } catch ( Exception e ) {
 
         errors.add( "IOException", new ActionError( "erro.publicacao.importacao" ) );
         saveErrors( request, errors );
         return mapping.findForward( "error" );
 
    }
 


Neo:
Code:
 public ModelAndView metodo(WebRequestContext request, Bean bean){
 
    try {
 
      // seu codigo
 
    } catch ( Exception e ) {
 
         request.addMessage("lalala", MessageType.ERROR);
 //request.addMessage("lalala", MessageType.DEBUG);
 //etc...
 
    }
 }
 
 no jsp:
 <n:messages/>
 
 é isso?
 

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

Membro desde: 30/06/2007 14:28:09
Mensagens: 19
Offline

pedro.goncalves wrote:
O neo apenas customizou o MultiActionController. E o spring possui vários controllers sim.

Ok..

Você diz montar um filtro para montar a validação? 


É isso ai !!! Antes de ele chamar a minha action, ele valida os campos via server side. Caso ocorra um erro ele adiciona todos as mensagens no objeto request.addMessage() e retorna para a página desejada.

Outra coisa nessa tag <n:messages/> quais atributos é permitido nela ?
O que eu quero fazer é o seguinte:
Quando der um erro de validação ele mostra um fundo vermelho com uma imagem de (X) do lado:
Quando for uma mensagem de confirmação, ele mostra o fundo verde com uma imagem de OK.
E se for uma mensagem de alerta ele mostra o fundo amarelo com uma imagem.

PS- Desculpa te encher o saco, mas estou querendo usar o neo no meu projeto particular.

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

Ele já faz isso automaticamente...

Code:
 #messageBlock {
 	border: 2px solid #dadada;
 	background-color: #F8F8F8;
 	text-align: left;
 }
 
 #messageBlock .info, #messageBlock .error {
 	font-family: helvetica;
 	font-size: 13px;
 	font-weight: bold;
 	padding-bottom: 4px;
 }
 
 #messageBlock .error,#messageBlock .globalerror {
 	list-style-image: url("../imagens/sys/bullet_red.png");
 	color: #FF3333;
 }
 
 #messageBlock .messagetitle{
 	color: #FF3333;
 	font-weight: bold;
 }
 
 #messageBlock .info {
 	list-style-image: url("../imagens/sys/bullet_green.png");
 	color: #4CB46B;
 }
 
 #messageBlock .trace,#messageBlock .causeitem {
 	list-style-image: url("../imagens/sys/bullet_orange.png");
 	color: #CF9A1C;
 }
 


Tem algumas regras predefinidas...

olha o ex: Ai:

Pedro Gonçalves
http://pedrogoncalves.com.br
[Email] [WWW] [MSN]
 
Índice dos Fóruns -> Dúvidas
Ir para:   
Powered by JForum 2.1.7 © JForum Team