©


Core J2EE Pattern Catalog

© CoreJ2EEPatterns
All Rights Reserved.

Last Updated:
January 29, 2006 8:54 PM

 

In Association with Amazon.com


Dispatcher View

See Core J2EE Patterns, 2nd Edition for full description of this pattern and its strategies.

Problem

You want a view to handle a request and generate a response, while managing limited amounts of business processing.

Forces

  • You have static views.
  • You have views generated from an existing presentation model.
  • You have views which are independent of any business service response.
  • You have limited business processing.

Solution

Use Dispatcher View with views as the initial access point for a request. Business processing, if necessary in limited form, is managed by the views.

Class Diagram

Sequence Diagram

Strategies

  • Servlet Front Strategy
  • JSP Front Strategy
  • Template-Based View Strategy
  • Controller-Based View Strategy
  • JavaBean Helper Strategy
  • Custom Tag Helper Strategy
  • Dispatcher in Controller Strategy

Consequences

  • Leverages frameworks and libraries.
  • Introduces potential for poor separation of the view from the model and control logic.
  • Separates processing logic from view and improves reusability.

Related Patterns

  • Front Controller
    In a Dispatcher View approach, a Front Controller can handle the request or the request may be handled initially by the view.
  • Application Controller
    An Application Controller will often not be used with Dispatcher View. An Application Controller is used in those cases where limited view management is required to resolve an incoming request to the actual view.
  • View Helper
    Helpers mainly adapt and transform the presentation model for the view, but also help with any limited business processing that is initiated from the view.
  • Composite View
    The view can be a Composite View.
  • Service to Worker
    The Service to Worker approach centralizes control, request handling, and business processing before control is passed to the view. Dispatcher View, defers this behavior, if needed, to the time of view processing.
Contact Us © CoreJ2EEPatterns.com. All Rights Reserved. Terms of use