This session provides examples of best-practice usage of JSF as part of a Spring-based application. You'll learn how to tap into Spring-managed services from a JSF presentation layer. You'll see how to use Spring Web Flow seamlessly as a powerful JSF Navigation Handler.
The Java Server Faces (JSF) standard simplifies development of a web application user interface by defining a web UI component model which is tied to a well defined request processing lifecycle. Compared to existing, less capable but "de-facto" standards such as Struts, JSF is still experiencing change and evolving as a JCP specification. This session provides examples of best-practice usage of JSF as part of a Spring-based application and shows how Spring leverages JSF's various extension points to address current gaps in the specification.
This Spring Experience Session will center around the web tier.
This Birds of a Feather (BOF) session will focus on best-practice usage of Spring as it applies to the web tier. Nothing in this general area will be considered off-limits. Bring your questions and comments to this session, and take advantage of 3 Spring web UI experts who will be available and ready to talk about any topic in this general area.
Enterprise JavaBeans is the original server-side component model for Java. While the writing is on the wall for the heavy, invasive EJB 2.1 standard, EJB 3.0, providing a programming model that is on the surface similar to Spring plus an O/R mapping library, is coming.
After an overview of the state of EJB, past, present, and future, including some of the problems which led to the creation of Spring itself, the first part of this session focuses on EJB 3.0. Both EJB 3.0 and Spring provide an Inversion of Control container (including dependency injection), and declarative transactional wrapping of application code. Attendees will learn how each framework tackles the same basic concerns, as well as the advantages and disadvantages of each approach.
EJB 3.0 also includes an O/R mapping API, officially known as the Java Persistence API. This persistence framework is usable both inside and outside of an EJB container. This section of the presentation will also give an overview JPA and Spring's approach to integration with it. As with all integration code in Spring, the aim is not to replace the native API, but rather to reduce boilerplate code while offering a consistent usage model, eliminate the possiblity of resource leaks, and allow usage of multiple persistence frameworks in conjunction with each other.
The second part of this session looks at how Spring integrates with EJB 2.1, still an important concern for legacy reasons in many environments. Part of this includes an examination of the problems with the 2.1 programming model, many of which were in fact the drivers for Spring to be developed in the first place.