Vita Rara: A Life Uncommon

Frameworks, API's, Interfaces.... Oh My! Defining a Foundation

Categories: | | | | |

One of the most important issues when starting a new project is the question of what tools, frameworks, and libraries are you going to use. In the past when starting a new project I take some time and survey the lay of the land. Well.. it's day one and I have been closely surveying the lay of the land.

It has been my intention that I would be using EJB 3.0 for this project, at least for the persistence layer. I have been looking at it for some time. I still feel comfortable with that decision. I've looked at Hibernate, which was the other possibility, but I think that EJB 3.0 will do for us.

Beyond the persistence layer things get a lot murkier. Over the last two years we have been working with Apache Struts for the presentation layer. We've also worked Apache Chains heavily into our architecture. I'm pleased with it in general. But... and there always seems to be a but, we are at the beginning of a new development cycle and a lot has changed in the web tier since starting MORI in January of 2004.

So, it's time to take a look around at things like JaverServer Faces, Tapestry, Spring MVC in the web tier. I'm also looking at Spring. We have some ambitious goals for this project, among them having a plug-in system to extend the system without a recompile of the system. I happened on an article about doing plug-ins with Spring, which got me looking at it.

I will be writing more about the plug-in aspect of the project over the next week. One of my milestones is to have a rough architecture outlined within the next two weeks, and then begin writing a prototype over the following two weeks. So, stay tuned.

In the end today was spent reading a book on Spring, and making sure that it is going to embrace and use the EJB 3 persistence spec. I'm fairly satisfied that it will. I'm still reading and will report more in a few days.

That's all for now.