Struts 2 Validación y repoblación de campos de entrada

Si tengo la siguiente configuración struts.xml:

<action name="input">
   <result>/jsp/input.jsp</result>
</action>

<action name="result">
    <result>/jsp/result.jsp</result>
    <result name="input">/jsp/input.jsp</result>
</action>

Y una forma simple con un solo campo:

<s:form action="result">
    <s:textfield name="firstName" label="First Name"/>
    <s:submit/>
</s:form>

Cuando la validación falla, supongamos que cada vez que envío la acción (resultado) se valida que la longitud de firstName es mayor que 3. Cuando falla, volverá a la página de entrada, en este caso input.jsp pero con el campo firstName ya poblado ( con el valor incorrecto que acabo de enviar. ¿Cómo hace Struts 2? Me pregunto porque, según tengo entendido, cuando envío el método predeterminado es PUBLICAR los datos de entrada a la acción y se validarán los nombres de los parámetros de solicitud que coincidan con la validación. en caso de que falle la validación, volverá a la página de entrada (como respuesta de la POST) con solo los parámetros de solicitud disponibles. Por lo tanto, lo único que se me ocurre es que el campo de entrada se llena con esos parámetros de solicitud, pero por ejemplo si hago la siguiente prueba, digamos que simularé eso con lo siguiente:

http: //domain/myApp/input.action? firstName = alfredo El campo de entrada firstName no se completará.

Pero cuando el resultado proviene de una validación, se completará. Me pregunto si Struts 2 para obtener esos valores que deberían estar en los parámetros de solicitud, empuja el objeto de parámetro de solicitud (# parámetros) y de esta manera se llena.

¿Alguien podría explicarme eso? ¿Cómo logra Struts 2 esa repoblación?

Gracias.

Respuestas a la pregunta(1)

Su respuesta a la pregunta