How JSF Channel works

Bank Transformation Toolkit (BTT) provides JavaServer Faces (JSF) Channel support. The following diagram shows the relationship between BTT and JSF.

Diagram shows the relationship between BTT and JSF

JSF technology provides the whole presentation framework, including the lifecycle management, JSP Taglib and other extensions. It can also access the BTT Context/Formatter. BTT provides one super-class that encapsulates the basic Context, Formatter, Service, Invoker and Operation accessing API. You can convert JSF management-bean to BTT Context and call other components.

The following diagram shows how BTT processes the JSF request:

Diagram shows how BTT process the JSF request.

  1. Resolve Value Binding

    To integrate with JSF, BTT provides a new PropertyResolver: BTTPropertyResolverImpl. After you declare them in the file faces-config.xml, the UI components data will bind to the relevant BTT Context instance.

  2. Process Events

    In the action method of the backing beans, you can invoke the execute(String operationName, String invokerId) method of the super bean provided by BTT framework to process events.

  3. Call BTT Invoker

    The supper bean creates a BTT Invoker instance according to the invokerId, which is passed as a parameter of the execute method. Then the supper bean invokes the BTT Invoker to process the business logic.

  4. Process Business Logic

    BTT Invoker starts the BTT business components, such as BTT SAE and BTT Operation, to process the business logic.

  5. Return result to JSF

    Upon the completion of the business logic, the BTT Invoker returns the processed result that includes the information needed by the presentation tier.

  6. Return outcome

    BTTJSFBaseBean parses the result from BTT Invoker and picks up the “outcome”, and then propagates it to the backing bean which originally initiates the request.