I did a webinar a few weeks ago (just finding some time to blog) that covered many of the changes in Java technology over the past several years. It was well attended (~110-120 people) which shows there is good interest in seeing where Java is going.
One of the main focus points of the webinar is that the landscape has changed quite a bit in the last several years and now going with some of the “tried and true” technologies may not be the best choice. For instance, JSF should now probably be the de-facto choice of web framework instead of Struts from the past. EJBs are no longer “poorly performing and hard to program” and are now in some ways easier to implement than the corresponding alternative in the Spring framework. The Spring framework is still relative but is now probably best used in a different way than in the past. There are also new options for application frameworks like Spring, most notably the Seam framework. There is also a very different way you have to think about “Design Patterns” as many of them were developed long before these changes in Java Enterprise.
You can get the presentation and see a replay recording here:
One of the topics that got some questions was about some of the things in Java EE 6. The webinar really didn’t get into a whole lot of detail on EE 6 and focused more on Java EE 5 since that is the version of the EE specifications that has broader support right now and that we see people actually starting to use.
Look for future blog posts and webinars where we will cover more details about some of the MANY changes in Java EE 6 in more detail.