2011-09-24

Framework Logical Structure

Logical Structure:
  
·         Presentation layer
o    Java Servlets handle inbound HTTP requests from browser
o    Invoke data service objects when required
o    Various static data – e.g. control tables, language-specific messages and labels – are cached
o    Uses XSL/T technology to create HTML
·         Business layer
o    Data service objects are invoked from presentation
o    These services ultimately perform business functions
o    Service objects themselves are Java, but business logic could be implemented in Java or COBOL
o    Invoke data access objects to communicate with database
·         Data access layer
o    Uses Hibernate Object Relational Model (ORM) framework for database access and persistence
o    Java Database Connectivity API (JDBC) is used for SQL statements from COBOL
o    All database calls are routed through framework’s data access layer – application programs do not issue direct calls to database
Services:
·         ORACLE system makes heavy use of “services”
·         These are data access and update services
·         Implemented in Java at high level – Java or COBOL at lower levels
·         Access Oracle / DB2 / SQL Server
·         Each service has XML metainfo document describing its structure
·         Framework automates mapping of string-based browser data to service data structure using metainfo XML (more about this in XAI class)
·         Service Dispatcher routes Web servlet requests to Java or COBOL service …
·         Service dispatcher acts as conduit to business objects from presentation layer
·         A service invocation represents a database transaction
·         Invokes Java or COBOL service
·         Service dispatcher is invoked from Web servlet
·         Invokes appropriate service for Web request:
o    Page
o    List
o   Search

Page Service

·         “Top level” application service
·         Orchestrates display and update of all data for a root object and all its child objects – e.g. Person, Person Name, Person Phone, Person Id, etc.
·         Data is displayed on a single tab menu – across one or more child tab pages
·         Page service names end with “P” – e.g. Person service is CILCPERP.


  • To apply Custom validations on page service we have to use Maintenance Extension. About Maintenance extension I’ll post in blog soon....

List Service:
·         Defines list of objects
·         Could contain nested lists
·         Used for list-oriented data – e.g. Customer Contacts
·         List service names end in “L” – e.g. CILCPCCL for Customer Contact list
·         Do not support database updates
Search Service:
·         Used to support ad-hoc user searches
·         Results similar to list services
·         Input is set of criteria and search mode
·         Search service names end in “S” – e.g. CILCPERS for Person search

We can also able to overwrite existing Search Service using OUAF technical component using java.

No comments:

Post a Comment