Stripes (framework)

{{Multiple issues|

{{More citations needed|date=December 2010}}

{{notability|Products|date=August 2020}}

}}

{{Infobox software

| name = Stripes

| logo = Stripes logo.png

| logo alt = Stripes Logo

| screenshot =

| caption =

| author = Tim Fennell

| developer =

| released = {{start date and age|2005}}

| latest release version = 1.6.0

| latest release date = {{start date and age|2015|07|23}}

| latest preview version =

| latest preview date =

| operating system = Cross-platform

| platform = Java Virtual Machine

| programming language = Java

| genre = Web application framework

| license = Apache License 2.0

| website = {{Official URL}}

}}

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

Hello ${actionBean.name}


Try again

No additional configuration files needed.

Bibliography

  • {{cite book

| first1 = Frederic

| last1 = Daoud

| date = October 27, 2008

| title = Stripes: ...and Java Web Development Is Fun Again

| publisher = Pragmatic Bookshelf

| series = Pragmatic Programmers

| edition = 1st

| pages = 396

| isbn = 978-1-934356-21-0

| lccn = 2010537102

| url = http://www.pragprog.com/titles/fdstr/stripes

| archive-url = https://web.archive.org/web/20160629091133/https://pragprog.com/titles/fdstr/stripes

| archive-date = 2016-06-29

}}

  • {{cite web |last1=Glover |first1=Andrew |date=2009-01-20 |df=mdy |url=https://www.infoworld.com/article/2072589/shed-the-weight-with-groovlets.html |title=Shed the weight with Groovlets |department=The Disco Blog |work=JavaWorld |access-date=2020-08-06}}
  • {{cite web |last1=Hoang Le |first1=Kevin |date=2006-10-06|df=mdy |url=https://www.infoworld.com/article/2077458/revisiting-the-logout-problem.html |title=Revisiting the logout problem |work=JavaWorld |access-date=2020-08-06}}
  • {{cite web |last1=Jose |first1=Benoy |date=2006-09-29 |df=mdy |url=http://javaboutique.internet.com/reviews/stripes/ |title=Stripes Takes Struts to the Next Level |work=Java Boutique |publisher=DevX |archive-url=https://web.archive.org/web/20120505075204/http://javaboutique.internet.com/reviews/stripes/ |archive-date=2012-05-05}}
  • {{cite web |last1=Allmon |first1=B.J. |date=2006-08-22 |df=mdy |url=http://www.ibm.com/developerworks/opensource/edu/os-dw-os-ad-configureless.html |title=Configureless J2EE development with Stripes, Apache Derby, and Eclipse |work=developerWorks |publisher=IBM |archive-url=https://web.archive.org/web/20100204205729/http://www.ibm.com/developerworks/opensource/edu/os-dw-os-ad-configureless.html |archive-date=2010-02-04}}
  • {{cite web |last1=Smith |first1=Rick |date=2006-07-17 |df=mdy |url=http://www.devx.com/Java/Article/31921 |title=Struts to Stripes—A Road Worth Traveling |work=DevX |archive-url=https://web.archive.org/web/20170923032951/http://www.devx.com/Java/Article/31921 |archive-date=2017-09-23}}
  • {{cite web |last1=Eagle |first1=Mark |date=2007-01-24 |df=mdy |url=http://www.onjava.com/pub/a/onjava/2007/01/24/java-web-development-with-stripes.html |title=Java Web Development with Stripes |work=ONJava |publisher=O'Reilly & Associates |archive-url=https://web.archive.org/web/20180506213519/http://www.onjava.com/pub/a/onjava/2007/01/24/java-web-development-with-stripes.html |archive-date=2018-05-06}}
  • {{cite conference |last1=Santos |first1=Samuel |date=2009-09-17 |df=mdy |url=https://speakerdeck.com/samaxes/java-web-development-with-stripes |title=Java Web Development with Stripes |conference=JavaPT09 |publisher=Portugal Java User Group |access-date=2020-08-06}}
  • {{cite conference |last1=Shan |first1=Tony |last2=Hua |first2=Winnie |year=2006 |title=Taxonomy of Java Web Application Frameworks |conference=ICEBE'06 |work=2006 IEEE International Conference on e-Business Engineering |pages=378–385 |isbn=0-7695-2645-4 |doi=10.1109/ICEBE.2006.98}}
  • {{cite book |last1=Watson |first1=Brent |year=2015 |title=Stripes by Example |publisher=Apress |isbn=978-1-4842-0981-3 |doi=10.1007/978-1-4842-0980-6|s2cid=40235866 }}