Dienstag, 23. August 2011

Java EE - all you need

This week we are going to finish our 3rd very large (100.000 LoC pure business logic) Java EE5+ project.

Some years ago, we started our first Java EE5 project with Seam2 but it didn't meet our needs. So we refactored it to Spring2 and Orchestra. Compared to Seam the conversation concepts of Orchestra were a lot better. With Java EE6 we tried to implement a whole project with Java EE6 without any other libraries. At the beginning it was a bit hard but we found workarounds for most things, but it got worse. Since we thought Seam3 should be better than Seam2 we gave it a try. If you ask me, they completely failed. Back then a colleague said that they should change the versioning. Seam3 is a complete new implementation and shares only the name with Seam2 and therefore we started calling it Seam 0.3 which reflects the current situation much better. So we thought that our project is going to fail because it was too late to refactor it to Spring3 and Orchestra. More or less in the last minute before we escalated it, we found MyFaces CODI (0.9.2 back then) and we saw it as our last chance to finish our project successfully. After reading the Wiki we already felt the potential and after about one week we called it CODI 9.2 because it was that awesome and very stable. We had almost no problem with it. It was the first week we could concentrate on our business-logic instead of thinking about workarounds or nasty bugs. In the 3rd project we started with Java EE 6 + CODI from the very beginning and we started to use some of the impressive features like type-safe view-configuration and navigation, custom project-stages,... . We didn't use it before, because there was no time for trying too much new stuff.

Conclusion:
If you would like to implement Java EE6 applications, you realy realy should give MyFaces CODI a try. It's just amazing what they did. Currently we are using 1.0.0 but today they announced 1.0.1 (that reminded me to blog about it). So don't think about what big marketing departments tell you and ignore that Open-Source projects tend to use humble version numbers. The result for us is one of the best application architectures we have seen, tested and used since we are implementing enterprise level applications and the productivity increased a lot!

Keine Kommentare:

Kommentar veröffentlichen