Release or Stripes 1.5 (18 Aug 2008)
Stripes is an open source and action-based Java framework of presentation layer developed to create web applications using the latest Java based technologies. Stripes is developed to minimise XML configuration to make web development easier and productive. It integrates with Spring and Hibernate framework. The very recent release of this product is the Stripes version 1.5. Some of the improvement features and bug fixes of this release includes-
· Lesser Configuration: Stripes has the ability to automatically locate and use the extensions of the application involved. Examples of such extensions are TypeConverter, Formatter, ExceptionHandler, ActionBeanContext, etc. Most applications now can be configured with only two parameters, viz., Extension.Packages and ActionResolver.Packages.
· Clean URLs: The request parameters can be used and validated as normal parameters and by embedding them into the request URL. Clean URL is supported by s:link, s:url and s:form. For having greater flexibility, the new DynamicMappingFilter can be used.
· Binding Access Control: To restrict the binding only to the desired properties can be done by using @StrictBinding Annotation. However, in special situations the ?policy?, ?allow? and ?deny? elements are also used by annotation.
· Easier Formatters and TypeConverters: The implementation of the Formatters and the TypeConverters can be done now by the use of autodiscovery. There is no need to extend the DefaultFormatterFactory and the DefaultTypeConverterfactory. Improvement of the DefaultFormatterFactory supports inheritance and interfaces.
· Partial Forms: Parrtial forms can be nested in other form tagsby using a new attribute partial=?true|false? in the s:form tag. This makes possible for AJAX code that returns HTML snippets to the client to contain form inputs.
· Client Cache Control: Caching of a response by a client can be controlled by the implementation of the new @HttpCache annotation to an ActionBean class and/or event handler method.
Goals of Stripes:
(i) The basic aim of Stripes is to make web development
in Java easier.
(ii) Though Stripes is simple in its deployment it gives us powerful solutions regarding common prpoblems.
(iii) Stripes enables developers to build their applications at a faster rate.
(iv) Stripes provides great extensibility of its use without the need of much configuration.
The normal flow of the events and the componets of an application developed using Stripes can be shown as below
Figure. Typical Stripes flow
The prime difference between Stripes and other action-based frameworks is that in Stripes the external configuration files are absent. Uses of annotations and the convention over configuration allow Srtipes to bring more development denying clutters.
Comparision of Stripes with the similar technology Apache Wicket:
(i) Stripes is an action-based model whether Wicket is component-based.
(ii) Stripes concentrates on the request-response nature of HTTP whether Wicket tries to make web development more likely the desktop applications.
(iii) Stripes applies basically the concepts of Struts technology whether Wicket is easier to learn with the concepts of Swing.
(iv) Stripes enables us to use AJAX framework whether Wicket has built-in AJAX suppport.