AppFuse 2.1 Released
Learn all about AppFuse's new release.
Join the DZone community and get the full member experience.Join For Free
The AppFuse Team is pleased to announce the release of AppFuse 2.1. This release includes upgrades to all dependencies to bring them up-to-date with their latest releases. Most notable are JPA 2, JSF 2, Tapestry 5 and Spring 3. In addition, we've migrated from XFire to CXF and enabled REST for web services. There's even a new appfuse-ws archetype that leverages Enunciate to generate web service endpoints, documentation, and downloadable clients. This release fixes many issues with archetypes, improving startup time, and allowing jetty: run to be used for quick turnaround while developing. For more details on specific changes see the release notes.
What is AppFuse
AppFuse is an open-source project and application that uses open source frameworks to help you develop web applications with Java quickly and efficiently. It was originally developed to eliminate the ramp-up time when building new web applications. At its core, AppFuse is a project skeleton, similar to the one that's created by your IDE when you click through a wizard to create a new web project. If you use JRebel with IntelliJ, you can achieve zero-turnaround in your project and develop features without restarting the server.
Archetypes now include all the source for the web modules so using jetty: run and your IDE will work much smoother now. The backend is still embedded in JARs, enabling you to choose which persistence framework (Hibernate, iBATIS or JPA) you'd like to use. If you want to modify the source for that, add the core classes to your project or run "appfuse:full-source".
AppFuse comes in a number of different flavors. It offers "light", "basic", and "modular" archetypes. Light archetypes use an embedded H2 database and contain a simple CRUD example. Light archetypes allow code generation and full-source features, but do not currently support Stripes or Wicket. Basic archetypes have web services using CXF, authentication from Spring Security, and features including signup, login, file upload, and CSS theming. Modular archetypes are similar to basic archetypes, except they have multiple modules that allow you to separate your services from your web project.
AppFuse provides archetypes for JSF, Spring MVC, Struts 2, and Tapestry 5. The light archetypes are available for these frameworks in addition to Spring MVC + FreeMarker, Stripes and Wicket. You can see demos of these archetypes at http://demo.appfuse.org.
For information on creating a new project, please see the QuickStart Guide.
Thanks to everyone for their help contributing patches, writing documentation, and participating on the mailing lists.
Published at DZone with permission of Matt Raible, DZone MVB. See the original article here.
Opinions expressed by DZone contributors are their own.