¿Qué es viewstate en JSF y cómo se usa?

En JSF, hay un estado de vista asociado con cada página, que se pasa de un lado a otro con envíos, etc.

Sé que viewstate se calcula utilizando los estados de los diversos controles en la página, y que puede almacenarlo tanto del lado del cliente como del lado del servidor.

La pregunta es: ¿cómo se usa este valor? ¿Se utiliza para validar los valores enviados al enviar, para garantizar que la misma solicitud no se envíe dos veces?

Además, cómo se calcula: me doy cuenta de que las caras enriquecidas pueden calcularse de manera diferente a las caras mías, pero una idea sería buena.

Gracias.

Respuestas a la pregunta(2)

Su respuesta a la pregunta