Skip to content

Implementing Controllers

Corby Page edited this page Jan 6, 2014 · 1 revision

All controllers will extend AbstractController. If the business process associated with the controller has a domain model, then the AbstractController will be typed to the interface type of the objects in your domain model. For example, if your controller renders a grid with Nomination objects in the domain model, then your controller will extend AbstractController<Nomination>.

The @Controller annotation must be placed on the class declaration for the controller. The value of the annotation is the LookupConstant value that is associated with the screen's menu selection.

The @RequestMapping annotation must also be placed on the class declaration for the controller. The value for this annotation will be the URI path used to access the screen. For consistency, this URI path should correspond to the file path used to access the JSP view for the controller.

Here is an example:

@Controller( LookupConstants.FRAME_FG_IMBALANCE_MASTER )
@RequestMapping("/balance/shipperImbalance")
public class ShipperImbalanceInformationController extends AbstractController<CumulativeBalance>
{
  ..
}