I was expecting that the job of moving OpenQuote from the old JBoss Portal/Alfresco based platform to Liferay would be a pretty tough one, but so far... well... it just hasn't been.
The first set of commits are in the 2.0 SVN branch now and are ready for the intrepid to play with. We're not building a binary bundle yet, so you'll have to build from source. What you'll get as a reward for your efforts is a running instance of Liferay based on JBoss 7.1.1 with the OpenQuote backend components all in place, all the product content in place, and a somewhat familiar home page. The unit tests all pass too. It really couldn't have gone much more smoothy... so far.
The elements that are left are the portlets, themes, integration and UI tests. Of those, portlets are giving me a headache right now.
It seems that Liferay is really expecting portlets to appear in the domain directory rather than inside an EAR as has been the style of OpenQuote deployments since the project began. There are various workarounds suggested on the web (interesting stuff here and here), but so far these workarounds aren't working in the way I'd like. They're also a bit messy. So messy that they're having the effect of making me rethink the bigger picture: Why are we using an EAR anyway?
Back in the days when OpenQuote was still called MultiQuote (and that is a long time ago), EARs were really the way to go, but JEE has moved on since then and so has JBoss. The primary value that we gained from EARs was all about class loaders. Our JEE components all get so share a common set of dependent jars which sit in the EAR's lib folder. But with JBoss Modules being a fundamental part of JBoss AS now, we have what can be seen as a much more flexible and expressive way of dealing with dependencies.
Ideally, of course, we'd wait for Project Jigsaw to deliver a module system right inside the JVM, but JBoss Modules is here now and could ease our path considerably.
I still have one or two straws to clutch at with regards to getting portlets working from the EAR, but if that fails we may be waving goodbye to our EARs in 2.0.
Change is good!
No comments:
Post a Comment