Skip navigation

Home
Added by Matt Raible, last edited by Matt Raible on May 13, 2008 23:15

Toggle Sidebar

AppFuse is an open source project and application that uses open source tools built on the Java platform to help you develop Web applications quickly and efficiently. It was originally developed to eliminate the ramp-up time found when building new web applications for customers. 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.

AppFuse 1.x uses Ant to create your project, as well as build/test/deploy it. AppFuse 2.0 uses Maven 2 to create your project as well as build/test/deploy it. IDE support is much better in 2.0 because you can generate the IDE project files with Maven plugins. AppFuse 1.x uses XDoclet and JDK 1.4+.

AppFuse 2.0 is a restructuring of AppFuse 1.x to use Maven 2 and JDK 5 and annotations. The major reasons we've changed to Maven 2 are:

  • Dependency downloading
  • Easier maintenance (everything can be compiled at once)
  • Easier upgrading for end-users

If you'd like to help out or ask questions about AppFuse 2.0, please do so on the user mailing list. If you'd like to use AppFuse 2.0, see the demos and videos and use the QuickStart Guide to get started.

May 11, 2008: AppFuse 2.0.2 Released!
Please see the QuickStart Guide to start using AppFuse or read the News Announcement to see what's changed since 2.0.1.
New Documentation!
If you're looking for an excellent article explaining what AppFuse is, please see Ryan Withers' Igniting your applications with AppFuse. For in-depth coverage of AppFuse and all its supporting frameworks, there's no better place to go than David Whitehurst's AppFuse Primer. Thanks to both Ryan and David for their contributions to this project.

New features in AppFuse 2.0:

  • Maven 2 Integration
  • Upgraded WebWork to Struts 2
  • JDK 5, Annotations, JSP 2.0, Servlet 2.4
  • JPA Support
  • Generic CRUD backend
  • Full Eclipse, IDEA and NetBeans support
  • Fast startup and no deploy with Maven Jetty Plugin
  • Testable on multiple appservers and databases with Cargo and profiles

Please use the menu on the right to navigate this site.

Recent Project News

Title Author Date Posted
New Tutorials - External Sorting with Display Tag and Integrating Compass 2.0 Matt Raible May 22, 2008 22:35
New Documentation! Matt Raible May 13, 2008 23:14
AppFuse 2.0.2 Released Matt Raible May 11, 2008 23:40
MarkMail and FishEye Matt Raible Dec 05, 2007 08:51
Integrating Crowd with AppFuse and Acegi Matt Raible Nov 28, 2007 12:20
AppFuse 2.0.1 Released Matt Raible Nov 26, 2007 10:08
Thanks goodness for free bandwidth Matt Raible Sep 20, 2007 11:23
AppFuse 2.0 Released! Matt Raible Sep 18, 2007 11:07
AppFuse 2.0 RC1 Released Matt Raible Sep 04, 2007 01:50
AppFuse vs. Grails vs. Rails Matt Raible Aug 10, 2007 09:24
New Server at Contegix Matt Raible Jul 27, 2007 08:26
AppFuse 2.0 RC1 Status Matt Raible Jul 11, 2007 10:30
AppFuse 2.0 M5 Released Matt Raible May 23, 2007 17:18
AppFuse Maven Plugin Status Matt Raible May 14, 2007 18:49
What web framework are you using with AppFuse? Matt Raible Apr 25, 2007 11:00
AppFuse QuickStart (AppFuse 2)
Commercial Support (AppFuse 2)
Demos and Videos (AppFuse 2)
FAQ (AppFuse 2)
News (AppFuse 2)
Project Information (AppFuse 2)
Reference Guide (AppFuse 2)
Tutorials (AppFuse 2)
Wallpaper (AppFuse 2)

Comments

Javier Antoniucci says:

Great job! You rocks, again! keep going the good work

Could you illuminate for us how we can use an alternative set of templates for CRUD code generation?

The original ones (included in "appfuse-maven-plugin-2.0-m5.jar") are ok, but I need to customize them.

Thanks in advance,

Javier A.

Matt Raible says:

The easiest way to override the templates now is to checkout the appfuse-maven-plugin from SVN, modify the templates and install it in your local repo. You can change the plugin name or version number to prevent conflicts with the AppFuse version. Of course, you can also submit enhancement requests to JIRA if you think others might like to use your enhancements.

Egor Pervuninski says:

I've already spend like 15 minutes on this site and could'n find any clue on how to download the thing. Where is a BIG download button?

Matt Raible says:

The QuickStart Guide tells you how to download it. Rather than downloading, you install Maven 2 and run an archetype:create command. For example:

mvn archetype:create -DarchetypeGroupId=org.appfuse.archetypes -DarchetypeArtifactId=appfuse-basic-jsf -DremoteRepositories=http://static.appfuse.org/releases -DarchetypeVersion=2.0 -DgroupId=com.mycompany.app -DartifactId=myproject

The Hello World video shows how it works.

Olaf Kittelmann says:

After being paralyzed with "old" technologies in a 3 year project, I am now trying to get up2date (Spring, Struts2, Ajax)quickly, and I felt lucky when I discovered the well timed released of appfuse V2.

I have read most part of the docu, played around and tried to get an understanding of maven for the better part of two days now, and a couple of questions remain:

Is it worth trying to integrate appfuse/maven into eclipse more tightly, so I can work the way I am used to (Start Tests/Tomcat - jump from console stack into code, hack away in a jsp while tomcat is running ), or should I jump ship and switch to the environment that you use in that awesome CRUD Video (btw - where can these nice IDEA Live Templates be found?)?

How much productivity can be gained by using the crud generation, is it realistic that with a bit tweaking on the templates I end up with searchable (think of example queries)or associated crud objects?

Will it be possible to isolate the generated code from more sophisticated behaviour via aspects?
Where will the assignment of this behaviour go? - I already see a jungle of annotations in my POJO?

Assuming there must be solution to said questions I started off really enthusiastic dreaming of a product line that allows quick assembly of 80% of Web Application Functionality I've produced over the last couple of years. but then I found out that the Appfuse-Struts2 Combo does not handle the Enum Solution described on this site correctly

Matt Raible says:

Olaf - please ask these types of questions on the Mailing Lists - you'll likely get a much faster answer there.

PeterZhang says:

Hi Matt,
would you please give much easier way the download and run appfuse?
I follow your Hello World video,when I run mvn or mvn jetty:run-war,
but error occurs when unzip the tomcat.

I don,t know why I need to downLoad tomcat.zip,unzip it and jetty,etc.I want use my own webServer .Please don't press us to do something that we don't need.Give us some freedom,provide the direct way ,downLoad from sourceforge,or your website,etc.we are suitable to the downloading way.

Matt Raible says:

Please see http://appfuse.org/display/APF/FAQ#FAQ-useexistingtomcat to see how to use an install version of Tomcat instead of downloading and installing one.

Justin Forder says:

I had the same problem with Tomcat 6.0.14 failing to unzip during the Maven build. It also failed when I downloaded it manually and tried unzipping it.

Downloading the current version (6.0.16) from the mirror the Apache site chose for me was OK - it unzipped fine.

So I changed the reference in the pom.xml file to be the same one I had just used:

http://mirror.fubra.com/ftp.apache.org/tomcat/tomcat-6/v6.0.16/bin/apache-tomcat-6.0.16.zip

and the Maven build worked.

Adaptavist Theme Builder Powered by Atlassian Confluence