One of the key issues with HTML forms is form state maintainence.
This is whereby the form is redisplayed to the user if some
required fields are missing. However, information already
entered in the form must be displayed as-is and not be lost (to
prevent the user from having to type all that again).
Form state maintainence is not an issue when AJAX or client
side javascript is used to validate form data (including
required fields). AJAX can be used to validate a given value
on the server side (by invoking server-side code) and
this mitigates some of the client hackability issues.
However, for simple server-driven forms, form-state maintainence
is essential.
The Molly Form API
Forms come in 2 varieties: Forms and
Simpleforms. These are 2 seperate
ways and unconnected to each other. Even though I (the author),
spent much more time
Forms encapsulate HTML form elements as Java objects. You can
dynamically create a server side form object containing various
forms fields. These can then be rendered to the browser (a form
knows how to render itself).
The main benefit to using the Forms API is automatic form-state
maintainence.