Agile web development with Spring Faces
Traditional JSF development has gained a reputation for being overly complex and cumbersome. Spring Faces introduces a host of features that improve the development experience and performance of a JSF + Spring application. Attendees will see a real-time demonstration of how Spring Faces makes the JSF experience more productive and reduces the pain of container re-starts and verbose configuration.
This live coding session will show how to quickly prototype a Spring Faces application and utilize the features of Spring Faces that make using JSF and Spring together a more cohesive experience:
High-level DSL for structuring control logic that utilizes EL and Groovy and is both easy to unit test and fully dynamic and refreshable in-container at runtime.
Introduction of view and flow scopes that fit more naturally with JSF's stateful model
Reduction in external configuration with no need for JSF managed- bean or navigation-rule definitions
Easy-to-introduce client-side validation and Ajax
Flow-managed persistence contexts that enable true transparent persistence.
Simplified integration with Spring Security
Less conceptual disconnect by enabling the Spring programming model throughout the stack ("turtles all the way down")
About Jeremy Grelle
Jeremy Grelle is a senior software engineer with SpringSource and the technical lead of the Spring Faces project which provides first-class integration between Spring and Java Server Faces. He is a software artisan with extensive experience in combining server-side Java with the latest web browser technologies to deliver a rich and usable experience for the end user on the web. He has worked heavily with JSF since its initial release and is a member of the JSR-314 Expert Group for JSF 2.0.
Prior to joining SpringSource, Jeremy spent several years crafting large-scale enterprise web applications for the giants of the telecommunications industry. He was a leader in utilizing Spring, JSF, and the latest Ajax techniques to solve a wide variety of problems ranging from inventory management, to low-level network device monitoring, to providing more efficient integration with legacy mainframe systems. He began his career developing e-commerce systems at several web startups where he first became fascinated with bending web browsers to his will and hasn't turned back since.
