Programming with Oracle ADF

Learn and Master Programming Skills with Oracle ADF

Programming Basics & Databases4.9(56)17h 47m89 lectures20 sections

What you'll learn

  • Learn the basics of Oracle ADF
  • Create database modules and their elements
  • Change data module properties by code
  • Validate data
  • Design and lay out the user interface
  • Design pages and navigate between them
  • Use templates and styles
  • Pass data between components
  • Secure the application and prepare it for deployment
  • Build a complete application

About this course

This course teaches programming with Oracle ADF to build complete applications that work with databases. It starts with important introductions, then database modules and creating their elements, changing the properties of data modules both from the interface and by code, and validating data. Next you learn the user interface, its layout and page design, while building basic and advanced skills step by step. Then you create a complete application in several parts, and learn advanced page design, navigation between pages, page layout tools, templates, styles and passing data between components. At the end you learn application security, preparing it for deployment, working with reports and advanced concepts. The course suits programmers, database developers and anyone who wants to learn this tool, and it is best to have a basic knowledge of databases and programming. Afterward you will be able to build a full application with interactive screens and reports. The teaching is practical and gradual, and you follow the lessons in order to move from the idea to the application step by step.

Expected outcomes

  • Master working with database modules in Oracle ADF.
  • Create interactive and attractive user interfaces.
  • Understand how to pass data between different elements.
  • Build comprehensive applications using ADF tools.
  • Enhance user experience using advanced planning and design techniques.

Learner reviews

These reviews are from learners who bought the content and completed at least 50% of it — there are no reviews from anyone who hasn't gone through the material.
4.9
★★★★★
56 reviews
5★
52
4★
0
3★
4
2★
0
1★
0

    Course content

    1

    Getting Started with Oracle ADF

    6 lectures
    1. Course HighlightsPresents the HR database schema and its related tables, then builds an ADF application from Business Components and a Task Flow, showing pages as Regions inside one main page, with Validation setup.20:04
    2. Important Introductions (1)8:30
    3. Important Introductions (2)Introduces the Java language and its strengths, including the JVM and the importance of Object Oriented programming, then starts installing the tools as part of learning database work in applications through ADF.6:43
    4. Important Introductions (3)20:36
    5. Important Introductions (4)Explains creating a database connection in ADF to work on the HR schema, unlocking the user account, and the StoreFront database that comes with the course.11:29
    6. Important Introductions (5)Explains preparing the course database through an attached file containing scripts that create the schema and tables and load the data with a username and password.9:25
    2

    Database Modules

    3 lectures
    1. Database Modules (1)Explains creating Business Components in Oracle ADF from database tables, including elements such as view object, association and view link, and then testing the result.23:30
    2. Database Modules (2)Reviews the HR database schema and how its tables chain together: regions, countries, locations, departments, jobs and employees, before organizing the elements inside the project.8:27
    3. Database Modules (3)Explains organizing project elements and naming Entity Objects with a suffix that shows their type, and the role of the Business Components properties file in linking objects and relations between tables.11:57
    3

    Creating Database Elements

    9 lectures
    1. Creating Database Elements (1)Explains creating Business Component objects in ADF, adding a new table later through an Entity Object, and leads into the different types of View Object.16:22
    2. Creating Database Elements (2)Continues creating database elements by building a View Object based on an Entity with custom properties, choosing specific columns, testing the query and following the execution Log.30:10
    3. Creating Database Elements (3)Explains adding a condition to a View Object query using a Bind Variable, such as the department number, then showing it in a table page that asks for the variable's value before displaying data.9:55
    4. Creating Database Elements (4)Explains creating a List of Values for the department number field, drawing its choices from the locations table, then a Dependent List that shows departments according to the selected city.21:17
    5. Creating Database Elements (5)Explains adding a list of values to a field in business components, so the user picks an employee rating from a static list instead of typing it manually.13:02
    6. Creating Database Elements (7)Explains the view link between the Courses and Students tables, creating it manually when the database has no relation, and two ways to show the relation in the application.12:12
    7. Creating Database Elements (7)Explains the view link between the Courses and Students tables, creating it manually when the database has no relation, then showing them as master detail in the page.8:35
    8. Creating Database Elements (8)Explains splitting business components across more than one application module, and how the system can work with several modules, each for a different type.11:47
    9. Creating Database Elements (9)Explains synchronize and refactor: syncing business components after adding an Email column to the database, and renaming an element in every place it is used.8:03
    4

    Modifying Data Module Properties

    5 lectures
    1. Editing Data Unit Properties (1)Explains editing data component properties in ADF by adding a default value to a field and adding a calculated field such as annual pay, computed as salary multiplied by 12.8:09
    2. Editing Data Unit Properties (2)Explains making a field an expression field with a default value that saves Java code, such as setting the hire date automatically to the creation date, then testing it in the application with the Commit button.21:31
    3. Editing Data Unit Properties (3)Explains changing field labels through the Entity Object so they appear in Arabic across all pages, using the resource file that stores the labels instead of editing each interface by hand.7:03
    4. Modifying Data Unit Properties (4)Explains adding a condition to a View Object query without changing the original query, by creating a new Query with a variable, then using it to search by number or range, such as a salary or department greater than a value.10:00
    5. Modifying Data Unit Properties (5)Explains the sequence as a way of automatic numbering in the database, how to create it and link it to a table column, then test it in the page.10:10
    5

    Programmatically Modifying Properties

    6 lectures
    1. Modifying Properties Programmatically (1)Explains why ADF needs programmatic property changes for operations that properties alone cannot handle, such as updating stock or customer balances on an invoice or payment.7:36
    2. Modifying Properties Programmatically (2)Explains modifying data behavior programmatically through a Database Trigger independent of the application, for example reducing a customer's balance automatically when a payment is recorded, leading to the second approach via Business Component.24:05
    3. Modifying Properties Programmatically (3)Explains the Business Component level in ADF, where each Entity Object and View Object has a Java class that can hold code, with methods like doDML to control insert and update behavior.15:41
    4. Modifying Properties Programmatically (4)Explains implementing the balance deduction programmatically inside the Entity Object instead of a Trigger, through a Java class and a CallableStatement that receives the customer number and amount on Insert.15:44
    5. Modifying Properties Programmatically (5)Explains modifying properties programmatically in business components by writing code in view object classes, such as getting the estimated row count of the different objects.12:52
    6. Modifying Properties Programmatically (6)Explains programming inside ADF in different ways, including writing JDBC code, and getting a column value such as EmployeeId from the current row and handling it in code.20:43
    6

    Data Validation

    5 lectures
    1. Data Validation (1)Explains data validation in ADF using validation rules at the entity level instead of on each page, such as requiring the first name to be between 8 and 12 characters, with an error message.13:08
    2. Data Validation (2)Explains data validation with Validation rules on fields, such as value Range and values that must or must not exist in a list or table, before moving to the Entity level.10:51
    3. Data Validation (3)Explains the Regular Expression rule for validating input, for example letting a name field accept letters only without digits or symbols, and how to adjust the pattern to accept digits from 0 to 9.6:25
    4. Data Validation (4)Explains creating a custom Method validation rule by writing code in the Entity's Java class, such as accepting only a salary below a limit, or preventing the first and last name from being identical.7:15
    5. Data Validation (5)Explains input validation with an entity-level validation rule that prevents two fields from having equal values, and showing an error message when it is violated.7:59
    7

    User Interface

    2 lectures
    1. User Interface (1)Starts the user interface section of ADF with components such as Input Text, List Box and Button, and applies a simple example that binds fields to variables in the page class and shows the result.19:40
    2. User Interface (2)Builds an application interface for an example with fields such as national ID and date, setting field formatting and Validator rules, such as required fields, input Patterns and ranges.19:12
    8

    User Interface Design

    4 lectures
    1. User Interface Layout (1)Explains planning the user interface in ADF: laying out the pages and how each page navigates to the others in a navigation diagram, before starting hands-on work.9:00
    2. User Interface Layout (2)Explains the Task Flow as the component responsible for navigation between pages, builds a main screen with buttons, links and images, then introduces the JSF Task Flow and connects pages to it.23:48
    3. User Interface Layout (3)Explains user interface layout with Task Flow, and the concept of the Default Activity page where execution starts, linking two pages with links through a Control Flow Case.16:03
    4. User Interface Layout (4)Explains planning the interface of a large ADF system with a main page that calls different task flows through actions, and linking pages together to navigate between the system's parts.5:45
    9

    Employing Pages

    3 lectures
    1. Page Employment (1)Explains localizing ADF pages: switching between Arabic and English by setting the language, and flipping the page direction between right-to-left and left-to-right.19:33
    2. Page Employment (2)Explains localizing ADF pages by setting the locale code, using the resource file and creating one copy in Arabic and one in English, so each language displays properly when the page runs.9:57
    3. Page Employment (3)Explains showing data in a Table and adding features to it, including column ordering and reordering, ascending and descending sort, and exporting the data to Excel.18:12
    10

    Advanced Page Employment

    8 lectures
    1. Advanced Page Employment (1)Presents the contents of the second Oracle ADF book: page functions, navigation, templates, security, deployment, reports with Jasper, and building a complete application.5:02
    2. Advanced Page Employment (2)Explains adding search to an application: a simple search screen on one column, then an advanced Query with several conditions at once, with a list of department names instead of typing the number.13:38
    3. Advanced Page Employment (3)Explains adding a Popup window to a page with a Table, placing a button in an empty column that shows a Show Popup Behavior with the selected employee's details, with trials and reruns.11:50
    4. Advanced Page Employment (4)Explains PPR, partial page rendering, to refresh a popup according to the employee selected in the table without reloading the whole page.4:04
    5. Advanced Page Employment (5)Explains the three popup types, window, dialog and note window, and using them for example to show a confirmation message before deleting.14:54
    6. Advanced Page Deployment (6)Explains adding a tree that shows departments so their employees appear when one is selected, then showing the chosen employee's details, with an alternative using a popup.9:58
    7. Advanced Page Deployment (7)Explains the PPR property, partial page rendering, to make a field compute automatically when another field changes without pressing a button, and setting the affected field.11:00
    8. Advanced Page Deployment (8)Explains the basic page operations in master detail such as insert, delete, commit and rollback, and binding them to buttons on a table or a form.10:08
    11

    Navigating Between Pages

    4 lectures
    1. Navigating Between Pages (1)Explains moving from one page to another in Oracle ADF, building two linked pages so that choosing an employee from a list opens that employee's page, and using a Tree to display employees.11:52
    2. Navigating Between Pages (2)Explains the Navigation List for choosing a department from a drop-down and showing its employees, using Panel Header to split the page into header and details, without coding, as a form of navigation and search.5:17
    3. Navigating Between Pages (3)Explains navigation between pages with the Train component, which shows related pages as a series of stations, adding navigation buttons and showing the current page name below so users know where they are.10:07
    4. Navigating Between Pages (4)Explains ways to navigate between pages, adding a menu and a toolbar inside a task flow and linking their items to the different pages.12:57
    12

    Page Layout Tools

    2 lectures
    1. Page Layout Tools (1)Explains ADF page layout tools such as Panel Form Layout to arrange fields by number of rows, and Panel Accordion with sections that have custom titles.16:35
    2. Page Layout Tools (2)Explains page layout tools, specifically Panel Tabbed for creating multiple tabs inside one page, adding items and nested tabs, with a different form placed in each tab.6:30
    13

    Templates and Formats

    2 lectures
    1. Templates and Formats (1)Explains templates in ADF: a template page with fixed parts such as header and footer and a dynamic area that changes, then creating pages from it so changing the template updates every page.15:37
    2. Templates and Formats (2)Explains formatting in ADF using the Skin and CSS style sheet, where changing the style of buttons, background or fonts affects every page, and distinguishes template-based design from formatting.9:35
    14

    Passing Data Between Elements

    3 lectures
    1. Data Passing Between Elements (1)Explains passing a value from one ADF page to another, such as the username from the login page, using the first method of reading the context, and avoiding a null value.27:46
    2. Data Passing Between Elements (2)Explains a way to pass data between pages and components, storing the username from the login page in a Bean with a public variable and reading it in the Home page.5:14
    3. Data Passing Between Elements (3)Explains passing data between components through Task Flow, making a Table and a Form share the same Data Control, and adding a Method Call along the path from the New button to the form page.12:22
    15

    Application Security and Preparation for Distribution

    3 lectures
    1. Application Security and Preparation for Distribution (1)Explains application security in ADF: creating users, roles and permissions for accessing pages, logging in, and a programmatic approach using a users table.15:18
    2. Application Security and Preparation for Distribution (2)Explains application security and preparing it for Deployment: generating an EAR file or deploying directly to WebLogic Server, setting up the server connection, then leading into the DBA's point of view.16:21
    3. Application Security and Preparation for Distribution (3)Explains application security and deployment from the DBA's point of view, using the WebLogic Server Console to deploy the application to the server and specify where its files are located.6:33
    16

    Advanced Concepts

    4 lectures
    1. Advanced Concepts (1)Explains advanced ADF components: Region, Task Flow and Fragment inside the main page, and the Switch component to show several pages, with a button to navigate between them.14:21
    2. Advanced Concepts (2)Explains advanced ADF concepts by creating several Task Flows and showing them in one main page as Dynamic Regions, with links that switch between the Task Flows with little coding.9:19
    3. Advanced Concepts (3)Explains adding Drag and Drop in ADF between two text fields inside a Panel Group, using Drag Source and Drop Target to move the value without coding.5:16
    4. Advanced Concepts (4)Explains displaying data with the Carousel component in ADF by dragging and dropping the table, choosing the fields to show as text, and running the page to see the result.6:14
    17

    Handling Reports

    10 lectures
    1. Handling Reports (1)Introduces reports as the essential output of any information system, picks Jasper iReport as the tool for them, covers downloading it, and outlines what will be explained next.5:18
    2. Handling Reports (2)Starts hands-on work with reports, configuring the required settings such as the Java Home path, JAR files and the database connection, until the report displays the selected data.10:28
    3. Handling Reports (3)Explains creating a Report without a template, getting to know report sections such as title and page title, and how to format each part and change the background color.9:35
    4. Handling Reports (4)Explains working with reports: adding a parameter to the query to filter report data instead of listing all employees, and exporting the report in formats such as Excel and Word.8:25
    5. Handling Reports (5)Explains using grouping in reports, such as showing a department with its employees or an invoice with its items in a master detail style, and formatting the result.8:30
    6. Handling Reports (6)Explains aggregate reports and the crosstab report in three steps: creating a blank report, defining a data set, then using it to show totals horizontally and vertically.7:49
    7. Handling Reports (7)Explains adding an image to a Jasper report, once as a logo and once as a background, and introduces the Arabic language problem in reports.5:20
    8. Handling Reports (8)Explains using a ready template in Jasper reports, editing it and saving it as your own, instead of designing every report from scratch.7:20
    9. Handling Reports (9)Explains calling a Jasper report from inside an ADF application, adding the required libraries and fonts to the project folders and then running the report.11:33
    10. Handling Reports (10)Continues calling reports from an ADF application by adding libraries and writing the call code in formats such as Excel, and passing a parameter to show a department's employees.18:37
    18

    Creating a Complete Application

    7 lectures
    1. Creating a Complete Application (1)Explains the stages of building a complete application before ADF implementation: study and report, then analysis, then database and interface design, followed by implementation, testing and preparing for deployment.9:30
    2. Creating a Complete Application (2)Starts building a complete application for inventory, purchasing, customers and suppliers, analyzing the business side and drawing an ERD of the entities and relations between items, invoices and payments, before table design.10:39
    3. Creating a Complete Application (3)Continues the complete application by designing tables, creating a database user and granting privileges, then creating the tables for inventory, customers, invoices and payments.7:29
    4. Creating a Complete Application (4)Builds part of the complete application by defining the payments table columns such as payment date, customer ID and amount, and linking them to the customers and invoices tables.20:16
    5. Creating a Complete Application (5)Continues the complete application by creating a task flow, a login page and adding a new user, using rollback to undo unconfirmed operations.22:13
    6. Creating a Complete Application (6)Continues the complete application on payments and invoices, so a payment is deducted from the customer's balance and item quantities are updated on commit.14:16
    7. Creating a Complete Application (7)Completes the application by setting up the start and login pages so it moves automatically to the home page when the data is valid, using a conditional variable.10:09
    19

    Books

    2 attachments
    1. Learn Basic Skills Step by Step
    2. Learn Advanced Skills Step by Step
    20

    Add-ons

    1 attachments
    1. Download the Attachments from Here

    Instructor

    Eng. Azab Mohamed Azab

    Eng. Azab Mohamed Azab

    Lecturer at the Arab Academy for Science, Technology and Maritime Transport, and the Egyptian Ministry of Interior, specializing in technology and information.
    68.8K views28 courses

    Related courses