SimpleFormController is used for easing Security purposes in a web application.

Suppose you have a page logon.jsp which is a Security entry point for your web application developed in springs then make a class LogonFormController which is controller and extends SimpleFormController.

 import javax.servlet.ServletException; 
import org.springframework.web.servlet.ModelAndView; 
import org.springframework.web.servlet.mvc.SimpleFormController;
import org.springframework.web.servlet.view.RedirectView;

public class LogonFormController extends SimpleFormController 
{ 
  public ModelAndView onSubmit(Object command) throws ServletException 
  {
    return new ModelAndView(new RedirectView(getSuccessView())); 
  }
} 

Add following lines of code in Dispatcher Servlet Specific XML File:

<bean id="logonValidator" class="test.web.LogonValidator"/>
<bean id="logonForm" class="test.web.LogonFormController">
<property name="sessionForm"><value>true</value></property>
<property name="commandName"><value>credentials</value></property>
<property name="commandClass"><value>test.business.Credentials</value></property>
<property name="validator"><ref bean="logonValidator"/></property>
<property name="formView"><value>logon.jsp</value></property>
<property name="successView"><value>sucess.jsp</value></property>
</bean>

Here is description of each tag:

  1. Logon Validator contains code for validatio (username password checking)
  2. commandName is class for form backing bean
  3. FormView is page that have authentication specific fields like username, password
  4. Sucessview is view that is secure web page and will be shown only if validation is successful.