Home > Foro de Struts >

Debates de Struts > Validacion 2ª parte

Validacion 2ª parte

Escrito por Cristina el 23/04/2007

Hola!

Sigo validando campos pero tengo un problema cuando hago la validacion del registro de usuario. Lo hago en el action y segun los resultados del bean que comprueba si el usuario esta registrado.

Lo que hago es esto:

En el action: si el valor devuelto por el bean es falso

ActionMessages errors = new ActionMessages();
  errors. Add("loginmal", new ActionMessage("validar.login.mal"));
                saveErrors(request. GetSession(),errors);
                return mapping. GetInputForward();

En jsp

<html:errors property="loginmal" />

En archivo properties:

validar=login.mal.Informacion incorrecta. Pruebe de nuevo.

Yo creo que el codigo esta bien pero cuando hago el registro y lo hago mal no me aparece ningun mensaje, se queda en la pagina jsp del registro(logico ya que segun creo es por la ultima linea que he escrito del action)

Gracias


Citar  |  
Ver mensaje      

Hugo Hidalgo
Estado de México, Mé...
Escrito por Hugo Hidalgo el 23/04/2007

Hola la validacion es correcta y tu codigo se ve que ya no tiene errores, solo la siguiente linea no es necesaria:

SaveErrors(request. GetSession(),errors);
 

Intenta quitando la linea anterior y ve que pasa

Saludos


Citar  |  
Ver mensaje     

Cristina
Salamanca, España
Escrito por Cristina el 23/04/2007

Hola!

Sigue pasando lo mismo, sigue sin aparecer esa linea.   Pense que podria ser del navegador(uso mozilla) pero tambien he probado en internet explorer y tampoco va alli.


Citar  |  
Ver mensaje     

Ivan
Madrid, España
Escrito por Ivan el 24/04/2007

Hola,

No se si te valdrá pero yo hago eso mismo de la siguiente manera, sin el ActionMessages:

ActionErrors errores=new ActionErrors();

Errores. Add("error", new ActionError("error.login.requerido"));

This. SaveErrors(request, errores);


Y el en fichero properties tengo la entrada:

error=login.requerido.Falta introducir el login


Y en la jsp lo tengo igual que tu,

<html:errors property="error" />


A mi me funciona asi, por si lo quieres probar. Un saludo.


Citar  |  
Ver mensaje     

Hugo Hidalgo
Estado de México, Mé...
Escrito por Hugo Hidalgo el 24/04/2007

Hola creo que lo unico que falta en tu codigo era la siguiente linea

SaveErrors(request, errors);


Desde ayer trate de enviarte la respuesta pero no funcionaba el sitio!

Saludos


Citar  |  
Ver mensaje     

Cristina
Salamanca, España
Escrito por Cristina el 26/04/2007

Hola!

He intentado todas las combinacines posibles con ActionError y ActionMessage pero me sigue sin aparecer el mensaje. Gracias por todos vuestros post pero sigo sin conseguir que aparezca el mensaje. La linea que me digiste de save ya la tenia y con la funcion en blanco ya que tuve que añadirla porque myeclipse me daba error sino la ponia pero en realidad no hace nada.

    public void saveErrors(HttpSession session, ActionMessages errors)
    {
    }

He probado lo que un chico me dijo pero me da error el tomcat en la segunda linea aun cambiando el metodo save y tambien quitandolo.

ActionErrors errores=new ActionErrors();

Errores. Add("error", new ActionError("error.login.requerido"));

This. SaveErrors(request, errores);

No se me ocurren mas posibilidades pero gracias igual por las molestias.


Citar  |  
Ver mensaje     

Ivan
Madrid, España
Escrito por Ivan el 26/04/2007

Hola,

No es necesario q escribas el metodo saveErrors porq es propio del objeto Action que estas creando y esta sobrecargado permitiendo el paso del objeto session o del objeto request.

Supongo q de la action vas directamente a la jsp donde muestras el error? Si no es asi en lugar del objeto request has de pasarle el objeto session al metodo saveErrors.

No sé por qué no te funciona pero si puedes poner el error q te da para ver por donde pueden ir los tiros.

Un saludo.


Citar  |  
Ver mensaje     

Escrito por Carolina el 14 de Octubre

Hola

El problema viene cuando haces esto

Errors. Add("loginmal", new ActionMessage("validar.login.mal"));

Si no tienes en el properties la key "loginmal" no lo encuentra y saltara la exception correspondiente. Deberias tener esto

Errors. Add("validar.login.mal"", new ActionMessage("validar.login.mal"));



Citar  |  
Ver mensaje     


Responder


Quiero recibir alertas por email cuando haya mensajes nuevos en este debate

Al escribir en el debate:
  1. Repasa la ortografía y no escribas en formato SMS.
  2. Lee el texto dos veces antes de publicar.
  3. No escribas todo en mayúsculas o negritas.
 
Páginas internacionales: España  |  Italia  |  Francia  |  México  |  Alemania  |  Reino Unido  |  Argentina  |  Chile  |  Colombia  |  USA

Búsquedas frecuentes: moscas volantes notas de enfermeria tic parpado inferior uso de la letra c obras de teatro comicas

Emagister cumple la Ley Orgánica 15/1999 de 13 de diciembre, de Protección de datos de Carácter Personal, y posee el código de inscripción nº 2002010053 del Registro General de la Agencia de Protección de Datos. Copyright © 1999/2000 - Grupo Intercom - Todos los derechos