Integrating a JSF application with Spring
Before you start
This tutorial introduces Java programmers to the use of JSF components to build highly interactive Java EE applications that are deployed on Apache Geronimo. This tutorial assumes that readers will use the Eclipse IDE as a development platform.
About this tutorial
This tutorial explains the Spring framework, a large (and very complete) WEB application framework that can be used in conjunction with JSF applications. We will use Spring to continue developing the front end of our login page for this Developer forum sample application.
About this series
This tutorial is the last part of a series of tutorials on using JSF to build an Apache Geronimo application (divided into five sections). The following is a summary of the entire series of tutorials:
Part 1th: Building basic applications with Eclipse and Apache Myfaces Core describes how JSF standard Apache myfaces implementations are used in conjunction with the Free Application Server Geronimo (also from Apache). This tutorial shows you how to build a JSF application using the Eclipse IDE's Web Tool Platform (WTP).
Part 2nd: Using Tomahawk in JavaServer Faces shows how to integrate the Apache Tomahawk component with the Geronimo application. Tomahawk provides a number of custom components that are fully compatible with JSF.
Part 3rd: Using AJAX4JSF in JavaServer Faces shows how to use the Sun's free open source framework AJAX4JSF to add Ajax functionality to the Geronimo application.
Part 4: Using the Apache Trinidad component to extend JSF describes how to integrate components from the Apache Trinidad (ADF Faces Open source version) into a Geronimo application to enhance the interface of the JSF application.
Part 5th: Integrating JSF applications with spring integration shows how to integrate JSF applications with the spring framework. Spring is a popular framework that makes it easier for Geronimo developers to build Java EE applications.
System Requirements
You must have the following tools to learn this tutorial:
Geronimo,apache Java EE Server project. Geronimo offers two styles of Tomcat and Jetty, depending on your needs. We use Jetty (version 1.1) because it is smaller.
JSF implementation of the Myfaces,apache. Please download the core version from Apache (no Tomcat included).
The Spring framework, a powerful application framework that can be integrated with existing WEB applications.
Eclipse, an extensible open source IDE, supports multiple languages and platforms.
Eclipse Web Tools Platform, which adds XML and JavaScript editing support and basic support for JSF to eclipse.
Install Java 1.4 or later in the system. The Eclipse binaries are shipped with its own Java runtime, but Geronimo and myfaces are not (with the runtime making the download archive file significantly larger). In this tutorial, we use Java 1.5 on Mac OS X 10.4, but there should not be much difference.
Preparatory work
In this section, we will import the current Devsignup project so that the Spring functionality will be integrated into the application in the next section. You'll also learn about the Spring Framework and some of its benefits.
Import Devsignup Project
If you haven't read the previous tutorials in this series, you should at least download the Devsignup sample project (links are available in the Downloads section at the end of this tutorial) because you'll need to add features later.
Part 2nd details how to import the project from the source archive file into Eclipse. Download the Devsignup-src.zip and follow the instructions in part 2nd, and then come back here when you're done. Be sure to follow the instructions in the "Repair Devsignup Project" section of part 2nd, otherwise you will not be able to build your application.
When you are done, the Eclipse Navigator view should resemble figure 1.
Figure 1. The Devsignup project in Eclipse
Now, start studying the Spring Framework and what it can do for you.