AppFuse Light 1.8 adds CSS Framework integration, as well as support
for Stripes (1.4.2) and Wicket (1.2.6). It also has significant upgrades for JSF and Tapestry; to versions 1.2 and 4.1.3 respectively. See the Release Notes for more information on what's changed since the the beta release of 1.8.
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
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
- 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
firstname.lastname@example.org. 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:
Yes, I realize that 60 combinations is ridiculous. I didn't create the frameworks, I'm just integrating them so you don't have to.
Unfortunately, it's a real pain to create Maven archetypes or they'd all be as easy as mvn archetype:create. Rumor is that the archetype plugin will allow you to create-from-project in the future. When that happens, I'll make sure all the combinations are available as archetypes.
Wednesday we had a nice relaxing day in Oslo. After breakfast, we went on a 2-hour boat tour of the local fjord. The boat lulled me to sleep for most of the trip, but my mom kept elbowing me to keep me awake so I did see manage to see some things. Many islands were so small they could only fit a single house. They all looked like very enjoyable locations to spend the summer months.
After the boat trip, we browsed through an outdoor exhibit by Steve Bloom. The exhibit had some amazing photographs of wildlife - I may have to buy some to fill up my empty walls. After that, we had a bottle of wine on the docks and then headed back to check in to our hotel.
At the hotel, I had my most expensive cocktail ever - paying $26 for a Whiskey and Coke. We had a very nice dinner on Wednesday night and retired fairly early. It's nice traveling with my parents because you get a good night's sleep every night.
On Thursday, I had my talk at 11:45. I was speaking in "Gate 1", which has a stage in the middle of the room - which audiences on both sides. It was a bit difficult to talk to one audience without turning your back on the other one, but I think I did OK. I told folks I would post a link to my slides after my talk. Rather than continually linking to the individual PDF, I've created a Presentations page that will list my presentations from various conferences and such. The direct link to my JavaZone talk is here. One of the highlights of the show (for me) was meeting Aslak Hellesøy. I've always admired Aslak for all his contributions to open source.
WARNING: Please remember these slides that are merely a backdrop for my presentation. During the talk, I do say that some things are innacurate or have been fixed with recent (or future) releases. The slides don't really mean anything without the accompanying talk.
After JavaZone, my parents and I went to see the Fram Museum and then to Vigeland Park. The sculptures at Vigeland were pretty incredible, especially since we were there while the Sun was setting.
This morning, we hopped out of bed, had some breakfast and headed for the airport. After making it all the way to the gate, our flight was cancelled at the last minute. The reason is mechanical and apparently parts need to be flown in from London. Currently, it's 2:30pm and they have no idea if it will be a 4-hour or 48-hour delay. They bussed us over to the nearby Clarion Hotel, fed us lunch and gave us rooms. There's no seats available on other flights, so everyone on our flight is pretty much stuck. Hopefully we'll get out of here sometime tomorrow.
Update: Looks like we'll be on a flight tomorrow morning at 7:00 AM. They've given me no indication that I'm confirmed through Denver, so tomorrow night could be spent in Newark.