Looking into JSF, Ajax4Jsf and Spring 2

Over the past couple weeks I've been evaluating tools and looking into web frameworks. I've started looking into JSF and Ajax4Jsf for our new project. I've taken a look at JSF in the past and was not that impressed. I found it funny they called their tag libraries components and acted like this was some new feature in web frameworks.

So far JSF is everything I remembered but Ajax4Jsf is very nice. It has been very easy to use ajax since the JSF tags have been modified to support ajax. That is a big requirement in my next project. We will be building a client setup app that will allow the user to walk through a wizard answering several questions and will be displaying the setting for the client in a parallel frame. Ajax will allow us to update that frame as the user answers question without repainting the screen.

We are also looking to use Spring 2 as out middleware/transaction management and possibly use JdbcTemplate if Hibernate doesn't work out. Spring's integration with JSF is very smooth and supper easy to setup. I only had to make one small addition to the faces-config.xml doc and add a managed property that referenced the Spring bean to inject.

This is my first look into the changes made in Spring 2.0 since I was using an older version at my previous job. The biggest complaint I ever got about Spring when introducing it to developers in the past was the amount of XML required. In the past I would need to write 15 or 16 lines of XML to wrap a bean with Transaction management advice or some other AOP advice. Now with Spring 2.0 I can setup a simple bean in four lines of XML and have my AOP advice configured in one spot that I can easily read on the screen without scrolling. This change should make it a lot easier for developers new to Spring embrace the framework. I'm really excited to introduce Spring to a new team again and see how much easier it is this time to get everyone on board.

 

What did you think of this article?




Trackbacks
  • No trackbacks exist for this post.
Comments
  • No comments exist for this post.
Leave a comment

 Name (required)

 Email (will not be published) (required)

Your comment is 0 characters limited to 3000 characters.