project is delighted to announce a beta release of StrutsLive 1.0, including the new Foundation framework and an all new example application. This release lets Struts developers harness powerful capabilities that until now have only been available in advanced, component-based frameworks like Tapestry
These new facilities piggy-back on StrutsLive's existing feature set, such as it's automated validation, formatting, bean population, error messaging, and field label highlighting, to radically streamline Struts development. Here's an overview of some of the key new features:
- XHTML Component Templates. You can now use XHTML templates instead of or in addition to JSP for dynamic content. Simple markup allows binding Java object property values, iteration of any element or group of elements, conditional rendering for control of editability and visibility, validation and formatting settings, and more.
- DynamicTypeCode and SelectionGroup. New classes automatically manage HTML select elements and options lists, and provide configurable sort orderings, label formats, filter settings, etc. Instances track current selections and obtain value lists lazily from pluggable services, and can be paired to automatically synchronize their values.
- Dynamic Query Support. Automatically translates user-entered search criteria into a FetchSpecification that wraps objects used to generate a dynamic query or to perform in-memory filtering on a Collection.
- XML Decoding. Deserializes arbitrarily complex graphs of Java objects from simple XML, automatically coercing string values to Java property types when necessary. Used by framework to parse XHTML templates, and in example app to 'fetch' objects from XML.
- Full-Featured ListView. Automatically paginates lists of Java objects presented in tabular views, and implements full set of behaviors typically needed by the UI, including navigation, sorting, filtering, drill-down, managing selected rows, and even bulk modification.
- Comprehensive Example Application. Seven separate examples fully illustrate usage of all the above as well as many other new features.
Please see the Semblance Project home page
and the Semblance 1.0 Beta 1 release notes
for more details.