ch5.requiredValidation
Class ControllerHelper

java.lang.Object
  extended by shared.HelperBaseCh4
      extended by shared.HelperBaseCh5
          extended by ch5.requiredValidation.ControllerHelper

public class ControllerHelper
extends HelperBaseCh5

This controller helper is similar to the example from Chapter 4, except that it also implements required validation.


Nested Class Summary
 
Nested classes/interfaces inherited from class shared.HelperBaseCh4
HelperBaseCh4.SessionData
 
Field Summary
 
Fields inherited from class shared.HelperBaseCh4
logger, request, response
 
Constructor Summary
ControllerHelper(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)
          The only constructor for this class has parameters for the request and response objects.
 
Method Summary
 java.lang.String confirmMethod()
          The method that preforms the actions associated with the confirm button.
 void copyFromSession(java.lang.Object sessionHelper)
          Most of the details for retrieving data from the session are implemented in the helper base class.
protected  void doGet()
          This method will be called by the controller to finish processing the request.
 java.lang.String editMethod()
          The method that preforms the actions associated with the edit button.
 java.lang.Object getData()
          Accessor that returns the bean.
protected  java.lang.String jspLocation(java.lang.String page)
          Generates the full path to a JSP.
 java.lang.String processMethod()
          The method that preforms the actions associated with the process button.
 
Methods inherited from class shared.HelperBaseCh5
getErrors, isValid, isValidProperty, setErrors
 
Methods inherited from class shared.HelperBaseCh4
addHelperToSession, addHelperToSession, doPost, executeButtonMethod, executeButtonMethod, fillBeanFromRequest, invokeButtonMethod, populateThrow, writeError
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ControllerHelper

public ControllerHelper(javax.servlet.http.HttpServletRequest request,
                        javax.servlet.http.HttpServletResponse response)
The only constructor for this class has parameters for the request and response objects. These objects will be stored in member variables.

Parameters:
request - The object that encapsulates the request information that is needed to communicate with the browser.
response - The object that encapsulates the response information that is needed to communicate with the browser.
Method Detail

getData

public java.lang.Object getData()
Accessor that returns the bean. This accessor is required so that the bean can be retrieved from a JSP, using the expression language. Only public accessors and mutators can be accessed using the expression language.

Returns:
The bean for this application.

copyFromSession

public void copyFromSession(java.lang.Object sessionHelper)
Most of the details for retrieving data from the session are implemented in the helper base class. The specific details concerning the actual data must be implemented in the controller helper, since each application can have different data. The specific details are implemented in this method; it is the implementation of an abstract method in the helper base class.

Specified by:
copyFromSession in class HelperBaseCh4
Parameters:
sessionHelper - The object that represents the controller helper that was added to the session in the previous request.

During each request, the controller helper is placed in the session. Before that happens, the controller helper from the previous request can be retrieved from the session. This object is retrieved in the helper base class and sent to the implementation of this abstract method.


jspLocation

protected java.lang.String jspLocation(java.lang.String page)
Generates the full path to a JSP.

Parameters:
page - The name of the JSP. This will be appended to the path of the directory that contains the JSPs. Using this method forces all the JSPs to be in the same directory.
Returns:
The string that represents the complete path to the JSP. This path must be relative to the directory where the servlet is mapped or must begin with a /, which represents the root of the web application.

editMethod

public java.lang.String editMethod()
The method that preforms the actions associated with the edit button.

Returns:
The address of the JSP that will complete the request.

confirmMethod

public java.lang.String confirmMethod()
The method that preforms the actions associated with the confirm button. This method implements required validation.

If the data is valid, then the next page will be the confirm page. If the data is not valid, then the next page will be the edit page.

If there are errors, they will be displayed in the edit page.

Returns:
The address of the JSP that will complete the request.

processMethod

public java.lang.String processMethod()
The method that preforms the actions associated with the process button.

Returns:
The address of the JSP that will complete the request.

doGet

protected void doGet()
              throws javax.servlet.ServletException,
                     java.io.IOException
This method will be called by the controller to finish processing the request. The controller is the servlet, so its doGet method will be called by the servlet engine. The controller will then call this doGet method.

Overrides:
doGet in class HelperBaseCh4
Throws:
javax.servlet.ServletException - A servlet exception is a severe error and means that processing cannot continue.
java.io.IOException - An IO exception is a severe error and means that processing cannot continue.