Software:Stripes (framework)

From HandWiki
Revision as of 20:00, 7 March 2023 by Ohm (talk | contribs) (simplify)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Stripes
Stripes Logo
Original author(s)Tim Fennell
Initial release2005; 19 years ago (2005)
Stable release
1.6.0 / July 23, 2015; 9 years ago (2015-07-23)
Written inJava
Operating systemCross-platform
PlatformJava Virtual Machine
TypeWeb application framework
LicenseApache License 2.0
Website{{{1}}}

Stripes is an open source web application framework based on the model–view–controller (MVC) pattern. It aims to be a lighter weight framework than Struts by using Java technologies such as annotations and generics that were introduced in Java 1.5, to achieve "convention over configuration". This emphasizes the idea that a set of simple conventions used throughout the framework reduce configuration overhead. In practice, this means that Stripe applications barely need any configuration files, thus reducing development and maintenance work. It has been dormant since 2016.

Features

  • Action based MVC framework
  • No configuration files
  • POJOs
  • Annotations replace XML configuration files
  • Flexible and simple parameter binding
  • Search engine friendly URLs
  • Runs in J2EE web container
  • JUnit integration
  • Easy internationalization
  • Wizard support
  • JSP layouts
  • JSP or freemarker templates as View
  • Spring integration
  • JPA support
  • AJAX support
  • Fileupload support
  • Compatible with Google App Engine
  • Open-source
  • Lightweight

Example

A Hello World Stripes application, with just two files:

HelloAction.java
import net.sourceforge.stripes.action.ActionBean;
import net.sourceforge.stripes.action.ActionBeanContext;
import net.sourceforge.stripes.action.DefaultHandler;
import net.sourceforge.stripes.action.ForwardResolution;
import net.sourceforge.stripes.action.Resolution;
import net.sourceforge.stripes.action.UrlBinding;

@UrlBinding("/hello-{name=}.html")
public class HelloAction implements ActionBean {
    private ActionBeanContext context;
    private String name;

    public ActionBeanContext getContext() {
        return context;
    }

    public void setContext(ActionBeanContext context) {
        this.context = context;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }

    @DefaultHandler
    public Resolution view() {
        return new ForwardResolution(“/WEB-INF/HelloWorld.jsp”);
    }
}
HelloWorld.jsp
<html><body>
    Hello ${actionBean.name}<br/>
    <br/>
    <s:link beanclass="HelloAction"><s:param name="name" value="John"/>Try again</s:link><br />
</body></html>

No additional configuration files needed.

Bibliography

External links