Seam is great framework, and all of us love developing with it. We normally start with seam-gen and am continuing with manual development.
It is great for generation of a starter application, but its customization abilities are limited. If we try to customize code generated by seam-gen, we can no longer regenerate.
Another problem that we have with seam-gen is that it generates forms with basic input components and does not offer any customization. For example, for properties of an enumerate type, seam-gen's form field is an input text field; however, what we want is a drop-down list of the enumerated type values.
To address these problems, I have developed a tool called FormBuilder that can fully generate view forms from entity beans and offers complete customization of input fields. My tool uses Hibernate-Validation (annotations). Developers can even define their own input components for form generation. When the input components are wrapped as facelet tag, it can offer even more!
- The tool is completely configurable using annotations and XML.
- Each generated form can function in either read-only or editable model, depending on the
- The form uses configuration-by-exception for its field rendering for security
- Forms may be referenced by Facelets tags to decrease application coupling.
- Tool forces good practice for code management (different users same style)
- Entity field property propagation to the form allows client-side validation
- I provide two tag libraries with client-side validation and new input component types like Password, Link, Html, ColorPicker. (The first library is Seam and RichFaces, and the second library is simple JSF.) (client-side validation allows internationalization)
- Form creation and maintenance is completely handled by the tool. After entity bean updates,
freshforms are autogenerated to match.
More information is available here:
I have also built an example application showing new components and client side validation (tested on 5 main browsers!)
It offers also comparison to forms generated by seam-gen.
Currently, you can download FormBuilder from
Later I am planning to put it on SourceForge.net.
I welcome any feedback on this work.
Tool does not require Seam! you can also use simple JSF and Facelets.