My Experience with AppFuse: Part I
06 Aug 2004History
I’ve been developing a little fitness application off-and-on for the past 6 or 7 months. Primarily it has been swing front-end, postgresql on the back, an
d hibernate in the middle.
The application is a combination of providing me with the opportunity to build something useful (to myself at least) and play with a variety of technologie
s I don’t often touch in my J2EE professional life.
Enter AppFuse
I’ve read about and played with Spring a bit and developed plans to integrate it. I also wanted to get back into developing webapp’s since it had been abo
ut a year since I last touched Struts.
AppFuse provides the opportunity to integrate Struts, Spring, Hibernate and just about any other technology Matt Raible
has an interest in.
For the past couple weeks I’ve been migrating and re-structing my code-base to integrate the AppFuse-based front-end and my thick swing front-end into a si
mple build and deploy process. I knew enough about spring, hibernate and struts to have some immediate success which I like. I learn by getting knee-deep
in the code and AppFuse easily facilitates that.
Pro’s
- Lot’s of technology – if you want experience with a variety of fairly cutting-edge systems, AppFuse provides that.
- Decent Documentation – Matt has a series of tutorials to get you into his framework. I’ll admit that I skipped most of them and just went straight to
the code. - Lot’s of autogenerated xml files
- Professional – It’s nice to see a framework that immediately gives you something that has the appearance of being a professional application, even if i
ts just a skeleton. - Support for unit-testing out of the box.
- … there are more pro’s but I’ll stick with these for this post
Cons
- A learning curve for those not familiar with xdoclet and the various xml files that are required of a struts, spring and hibernate application
- In the past I’ve perferred to use Strut’s dynaforms to hold my form data. I’m happy editing my struts-config.xml file by hand or with an editor and d
on’t necessary need it auto-generated from my data model. There is likely a way to avoid the autogenerated actionforms and struts-config.xml but I haven’t
bothered to look much into it.
All in all, I’m having success and fun working with AppFuse and suggest that anyone else who wants to dip their foot into Struts, Spring and Hibernate to c
heck it out. Once I have the web-interface further built out, I’ll likely integrate spring into the thick client because it just makes handling hibernate
sessions so simple.
Kudo’s to Matt. I’ve already got plans to pick Spring Live up once it’s released and I have so
me spare cycles.