Central Florida Software Symposium
August 24 - 26, 2007 - Orlando, FL
Mark Fisher
Spring Integration Lead
Mark Fisher is an engineer within the SpringSource division of VMware and lead of the Spring Integration project. He is also a committer on the core Spring Framework and the Spring BlazeDS Integration project. Mark has provided consulting services for clients across numerous industries, and he has trained hundreds of developers how to use the Spring Framework and related projects effectively. Mark speaks regularly at conferences and user groups in America and Europe.
Presentations
Spring 2.0: New and Noteworthy
Spring 2.0 has marked a major advance in the Spring Framework. While still maintaining backwards compatibility, this release adds quite a few new features. What are those features and how do they add value? Come by and see.
In this session we'll provide a practical tour of what's new in Spring 2.0. Spring 1.x users who are looking to upgrade to Spring 2.0 will love this session. If you're not using Spring already, this talk will give a great overview of the things you're missing out by not using Spring 2.0.
The talk will highlight new configuration strategies, Spring AOP, bean scoping, JPA support, JMS improvements, new Spring MVC features, VM languages, and much more.
Message Driven POJOs with Spring
Spring 2.0 introduced support for Message-Driven POJOs meaning that it is now possible to receive JMS messages asynchronously and delegate the handling of those messages to simple objects even within a lightweight application running outside of any application server. If your POJO has a return value, it will automatically be sent to a response destination.
After a quick overview of Spring's JMS support, we will build a Message-Driven POJO sample application from the ground up. This will include sending a Message as a request and receiving a reply across separate JVMs. You will learn how to configure the Message-Driven POJO without writing a single line of messaging code. You will also learn how to configure the pool of concurrent consumers and integrate with Spring's transaction management. We will use the JMS namespace available as of Spring 2.5, and we will even explore the possibility of delegating to a Groovy-scripted object.
Spring MVC Essentials
Spring MVC is a powerful and flexible framework for building web applications. Its interface-based API promotes loose coupling, yet it also offers many convenient base classes for common functionality. Whether you use the base classes or roll your own, you will discover numerous strategies and extension points. This flexibility will be greatly appreciated once you are up to speed, but newcomers often wonder where to begin.
This session will introduce the core components in a breadth-first fashion focusing on the essentials. We will then build a simple Spring MVC-based webapp from scratch including implementation, testing, configuration, and deployment. Along the way you will see how to bootstrap a Spring-managed service layer, configure request handlers, render views, provide some validation logic, and even configure data-binding for a file-upload. We will round off the discussion with some best-practice guidelines and a quick "what next?" overview of some of the most important extension points.
Enterprise Security with Spring
Spring Security (formerly known as 'Acegi') enables self-contained, consistent, and extensible solutions for securing your applications. Version 2.0 provides major enhancements including a domain-specific XML namespace, convention-based defaulting, and annotation support. This provides a significantly simpler experience for developers while still supporting the same degree of flexibility.
Spring Security's interceptor-based approach is non-invasive even when extended to accommodate domain-specific requirements. The two main security processes (authentication and authorization) are decoupled in order to provide flexibility across a wide variety of providers and strategies. This presentation will include an overview of Spring Security's pluggable authentication process and how it accommodates a wide range of possibilities including Database, LDAP, Single Sign On, and even an in-memory option for development and testing. We will then proceed to cover authorization where you will see its consistent approach for securing web requests and method invocations. Throughout the session, we will walk through a sample application that demonstrates Spring Security's core features.


