Introduction
A bit of back story:
I had to tie in web services to a hibernate-based backend for the upcoming release of FireBright's SaaS on Demand platform. The problem: Doing it in such a way that:
- doesn't tie me down to a particular platform.
- Offers me maximum flexibility in terms of features
- Doesn't bog down performance.
Web services are quite interesting beasts. Not something to be taken lightly, if you consider the implementation that Axis2 provides. That being said, there is another way, privided by the friendly folks at XFire (which, incidentally, is where I found out about FishEye?). But, there seems to be a bit of a disconnect.. I've got objects persisted by Hibernate, and those same objects need to be rendered as XML Data, and with over 50 entity types and relationships, I really don't want to have to write populators for everything.
Again, introduce XFire. Why? Because it makes this stuff simple. WSDL Generation, auto-typing using aegis or JAXB (PERFECT!), and it even uses jws annotations, so it limits the amount of implementation specific code in my own code. So how this is done.