Foros del Web » Programación para mayores de 30 ;) » Java »

Dudas "fáciles" sobre struts

Estas en el tema de Dudas "fáciles" sobre struts en el foro de Java en Foros del Web. Buenas! Soy nuevo en esto de la programación, y mucho más con Struts. Entre Struts 1 y 2, me he decidido por ahora por empezar ...
  #1 (permalink)  
Antiguo 28/07/2008, 06:00
 
Fecha de Ingreso: julio-2008
Mensajes: 26
Antigüedad: 15 años, 9 meses
Puntos: 0
Información Dudas "fáciles" sobre struts

Buenas!

Soy nuevo en esto de la programación, y mucho más con Struts.

Entre Struts 1 y 2, me he decidido por ahora por empezar con la 1. Tengo varias dudas al respecto, dudas que supongo serán fáciles para alguien que haya hecho ya algo con Struts.

Primera de ellas. He visto que hay dos tipos de bean que le pueden llegar al Action: el ActionForm y el org.apache.struts.action.DynaActionForm. Pues bien, mi duda es: si el segundo de ellos es una clase genérica, no hecha por nosotros, como se validan los campos? Es decir, en el ActionForm tenemos el método validate en el cual metemos la lógica que queramos. Pero para el Dynamic no. Por tanto si el atributo validate del action correspondiente está a true, que hará el framework para validar el formulario?

Segunda duda. Con la siguiente línea

<forward name="Failure" path="/{1}PhoneClosureFormLoader.do"></forward>

Se supone que el {1} es una especie de parámetro que falta. Pero, en qué momento y como se le especifica?

Perdonad si alguien se siente ofendido por preguntas que seguramente serán muy tontas y muchas gracias por anticipado.

Un saludo.
  #2 (permalink)  
Antiguo 28/07/2008, 10:32
Usuario no validado
 
Fecha de Ingreso: junio-2008
Mensajes: 386
Antigüedad: 15 años, 10 meses
Puntos: 10
Respuesta: Dudas "fáciles" sobre struts

Hola,

Segun la documentacion puedes crear una clase que te sirva para validar pero ésta debe de extender de DynaActionForm y recuperar las variables con:
(String)this.get("nombre");

Pero no te serviria esto ya que al usar la clase org.apache.struts.action.DynaActionForm te estas "ahorrando" el ActionForm. Pero puedes hacer la validacion directamente en tu Action:

DynaActionForm forma= (DynaActionForm)form;
ActionMessages errors = new ActionMessages();
if(((String)forma.get("nombre")).equals("")) {
errors.add("nombre",new ActionMessage("error.nombre"));
}


Lo otro que comentas del {1}, la verdad nunca lo he utilizado en un forward, segun yo (a lo mejor y estoy mal) se utiliza solo en el framework de Validator (validator.xml) en donde indicas los mensajes de error que pudiera tener una variable.

Espero te haya ayudado.

saludos!
  #3 (permalink)  
Antiguo 29/07/2008, 00:28
 
Fecha de Ingreso: julio-2008
Mensajes: 26
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: Dudas "fáciles" sobre struts

Cita:
Iniciado por Bunburyscom Ver Mensaje
Hola,

Segun la documentacion puedes crear una clase que te sirva para validar pero ésta debe de extender de DynaActionForm y recuperar las variables con:
(String)this.get("nombre");

Pero no te serviria esto ya que al usar la clase org.apache.struts.action.DynaActionForm te estas "ahorrando" el ActionForm. Pero puedes hacer la validacion directamente en tu Action:

DynaActionForm forma= (DynaActionForm)form;
ActionMessages errors = new ActionMessages();
if(((String)forma.get("nombre")).equals("")) {
errors.add("nombre",new ActionMessage("error.nombre"));
}


Lo otro que comentas del {1}, la verdad nunca lo he utilizado en un forward, segun yo (a lo mejor y estoy mal) se utiliza solo en el framework de Validator (validator.xml) en donde indicas los mensajes de error que pudiera tener una variable.

Espero te haya ayudado.

saludos!
muchas gracias por tu respuesta!

O sea, que la idea del Dynamic ese es ahorrarnos el ActionForm para validar directamente en el action, no?

Respecto a lo del {1} creo que no es para lo del Validator.xml. Pero no obstante seguiré buscando por ahí a ver si veo algo.

Lo dicho, muchísimas gracias por tu ayuda.

Un saludo.
  #4 (permalink)  
Antiguo 29/07/2008, 10:06
Usuario no validado
 
Fecha de Ingreso: junio-2008
Mensajes: 386
Antigüedad: 15 años, 10 meses
Puntos: 10
Respuesta: Dudas "fáciles" sobre struts

Cita:
Iniciado por ElCrackdel83 Ver Mensaje
muchas gracias por tu respuesta!

O sea, que la idea del Dynamic ese es ahorrarnos el ActionForm para validar directamente en el action, no?

Respecto a lo del {1} creo que no es para lo del Validator.xml. Pero no obstante seguiré buscando por ahí a ver si veo algo.

Lo dicho, muchísimas gracias por tu ayuda.

Un saludo.

De nada, pero lo del {1} solo lo he visto y utlizado con el framwork de validator, ahi mandas a llamar el mensaje de error que mostraras en el jsp. Los mensajes de error de tu aplicacion los declaras en un archivo properties, ejemplo:

Para validar que una cadena no sea menor a 5 ni mayor a 10, en el archivo properties tendrias que poner:
mensaje.error=La cadena no puede ser menor a {1} ni mayor a {2} caracteres

Para llenar los campos {1} {2} lo haces desde el validator.xml

Espero te haya ayudado.

saludos!
  #5 (permalink)  
Antiguo 29/07/2008, 23:53
 
Fecha de Ingreso: julio-2008
Mensajes: 26
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: Dudas "fáciles" sobre struts

Cita:
Iniciado por Bunburyscom Ver Mensaje
De nada, pero lo del {1} solo lo he visto y utlizado con el framwork de validator, ahi mandas a llamar el mensaje de error que mostraras en el jsp. Los mensajes de error de tu aplicacion los declaras en un archivo properties, ejemplo:

Para validar que una cadena no sea menor a 5 ni mayor a 10, en el archivo properties tendrias que poner:
mensaje.error=La cadena no puede ser menor a {1} ni mayor a {2} caracteres

Para llenar los campos {1} {2} lo haces desde el validator.xml

Espero te haya ayudado.

saludos!
me has ayudado mucho! muchas gracias! Ahora más o menos no lo veo como chino, jejejej

Un saludo.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:58.