AppFuse Light 1.8.1 Released: includes upgrades to Spring 2.5 and Wicket 1.3
AppFuse Light 1.8.1 is a bug fixes release that includes an upgrade to Spring 2.5 and Wicket 1.3 RC1. See the Release Notes for more information on what's changed since the last release.
What is AppFuse Light? Click here to find out.
AppFuse Light is a lightweight version of AppFuse.
I was inspired to create it while writing Spring Live and
looking at the struts-blank and webapp-minimal
applications that ship with Struts and Spring, respectively.
These "starter" apps were not robust enough for me, and I wanted
something like AppFuse, only simpler.
AppFuse Light is designed to show Java Web Developers how to start a bare-bones webapp using a Spring-managed middle-tier backend and Hibernate for persistence. By default, AppFuse Light uses Spring for its MVC framework, but you can change it to JSF/MyFaces, Stripes, Struts 1.x, Struts 2.x, WebWork, Tapestry or Wicket. In addition, there's a number of extras for Spring MVC, including Velocity and FreeMarker versions, Ajax support and Acegi Security support.
This project was formerly named Equinox and has been under development since April 2004.
AppFuse Light now offers 60 possible combinations for download:
- Web Frameworks: JSF (MyFaces), Spring MVC (with Ajax, Acegi Security, JSP, FreeMarker or Velocity), Stripes, Struts 1.x, Struts 2.x, Tapestry, WebWork, Wicket
- Persistence Frameworks: Hibernate, iBATIS, JDO (JPOX), OJB, Spring JDBC
If you have any questions about this release, please subscribe to the AppFuse user mailing list by sending a blank e-mail to email@example.com. You can also post questions in a forum-like fashion using Nabble: http://appfuse.org/forum/user.
If you're a developer of one of the frameworks that AppFuse Light uses - I'd love a code review to make sure I'm "up to snuff" on how to use your framework. I'm also more than willing to give commit rights if you'd like to improve the implementation of your framework.
Live demos are available at:
- Spring · Spring + Ajax · Spring + Acegi
- MyFaces + Facelets
- Struts 1 · Struts 2
What's on tap for AppFuse Light 2.0? Here's what I'm hoping to do:
- Drop the seldom-used persistence frameworks: JDBC, JDO and OJB.
- Drop Struts 1.x and WebWork as web frameworks (replaced by Struts 2).
- Support the same persistence frameworks as AppFuse: Hibernate, iBATIS and JPA.
- Re-use appfuse-service, appfuse-hibernate, appfuse-ibatis and appfuse-jpa in AppFuse Light. I'll likely include the core classes (User, Role) since AppFuse Light is more "raw" than AppFuse.
- Require Java 5.
Let me know if you disagree with any of these items or would like to see other enhancements.
Posted by Erik Weibust on November 29, 2007 at 10:35 PM MST #
Posted by Matt Raible on November 29, 2007 at 10:42 PM MST #
I've been using appfuse for some time. It's really great.
Anyway, how about adding code generation to appfuse-light ?
Some folks including myself feel the need to start "clean" but "not really from scratch".
I tried appfuse-struts2-hibernate only to find errors in test cases and models for fixing since I used a relatively complex relations on the database. But I think that the worst feature in appfuse is the script always drop the tables and the relations and recreate them not in the way i want every time I run the mvn jetty:run.
Then I get appfuse-light started and move the generated code in appfuse while painfully erased "excessive features and configurations" along the way. When I speak about "excessive features and configurations" I am talking about things that not everyone is using like ajax support and various internationalization config files.
About the User class, how about making it very simple (e.g. user_id, username, password). Since user information may vary in different applications, why not let the information be stored in different table that refers the user table.
Posted by Windiantoro on March 17, 2008 at 12:48 AM MDT #