Download the WEB4J Example Application

Two nerds discover true love and web4j In the same day. Coincidence?

The WEB4J example application is called Fish & Chips Club. It allows a group of friends to meet regularly for lunch. It serves as an informal "reference implementation", and exercises about 95% of the WEB4J API. Here is an example of a typical screen.

Download Now

The download for the example app includes freely available source code, and a free trial version of web4j.jar. To install Fish & Chips Club, please follow the guidelines of the Getting Started Guide. As well, please see these short remarks regarding the license.

In general, WEB4J applications can interact with any relational database. The Fish & Chips Club example application uses MySQL.

System requirements are :

  • JDK 1.5+
  • Servlets 2.4+ (Tomcat 5.5, for example)
  • JSP 2.0+

The Fish & Chips Club javadoc includes convenient links to source code, JSPs, and SQL statements. The source code is syntax-highlighted to make it easier to read.

The Fish & Chips Club includes several modules :

  • a main business domain
  • webmaster tools - diagnostics, logging settings, performance stats
  • user preferences - changing language, changing passwords
  • access control - adding users, changing roles, resetting passwords
  • translation - adding and editing translations for user interface text

The Fish & Chips Club example application is provided as both a starting point and guide. It is recommended, though not required, that your applications be created by starting with the example, and changing it gradually. If any items are undesired, then they are simply removed by deleting directories (and any links from menus). This is only possible because of the package-by-feature style recommended by WEB4J. (See the User Guide for more information.)

This approach is consistent with the following :

  • destroying things is easiest of all
  • next, changing something that already exists is usually easier than starting with nothing
  • finally, starting with nothing usually takes the most time

In any case, the classes in the example application are always effective guides.