You are previewing Oracle APEX Best Practices.
O'Reilly logo
Oracle APEX Best Practices

Book Description

Make the most of Oracle Apex with this guide to best practices. It will help you look at the bigger picture when building applications and take more elements into account such as security and performance.

  • "Oracle APEX Best Practices" will get you started with Oracle APEX for developing real-world applications that perform and maximize the full potential of Oracle APEX

  • You will also learn to take advantage of advanced SQL and PL/SQL along the way

  • Combines the knowledge of Oracle Apex Experts -- Alex Nuijten, Iloon Ellen-Wollf, and Learco Brizzi

  • Setting up your environment and getting ready for developing applications

  • In Detail

    Have you ever wanted to create real-world database applications? In this book you’re not only getting APEX best practices, but will also take into account the total environment of an APEX application and benefit from it.

    "Oracle APEX Best Practices" will guide you through the development of real-world applications. It will give you a broader view of APEX. The various aspects include setting up APEX environment, testing and debugging, security, and getting the best out of SQL and PL/SQL.

    In six distinct chapters you will learn about different features of Oracle APEX as well as SQL and PL/SQL.

    Do you maximize the capabilities of Oracle APEX? Do you use all the power that SQL and PL/SQL have to offer? Do you want to learn how to build a secure, fully functional application? Then this is the book you’ll need.

    "Oracle APEX: Best Practices" is where practical development begins!

    Table of Contents

    1. Oracle APEX Best Practices
      1. Oracle APEX Best Practices
      2. Credits
      3. About the Authors
      4. About the Reviewers
        1. Support files, eBooks, discount offers and more
          1. Why Subscribe?
          2. Free Access for Packt account holders
          3. Instant Updates on New Packt Books
      6. Preface
        1. What this book covers
        2. What you need for this book
        3. Who this book is for
        4. Conventions
        5. Reader feedback
        6. Customer support
          1. Downloading the example code
          2. Errata
          3. Piracy
          4. Questions
      7. 1. Prepare and Build
        1. History and background
        2. Installing APEX
          1. Runtime or full development environment
            1. Build status
          2. Tablespaces
          3. Converting runtime environment into a full development environment and vice versa
        3. Choosing a web server
          1. OHS
          2. EPG
          3. APEX Listener
        4. Creating a second administrator
          1. APEX web interface
          2. Command line
          3. Other accounts
        5. Database
          1. Data model
          2. Creating the database objects
          3. Other tools
          4. PL/SQL usage
        6. Creating a workspace
          1. Creating administrators, developers, and users
        7. User Interface Defaults
          1. Attribute Dictionary
          2. Table Dictionary
          3. Creating User Interface Defaults
        8. Page Zero
        9. Structure of multiple applications
          1. Subscribe and publish
          2. Creating a framework
            1. Master and template application
            2. Login application—optional
            3. System application—optional
          3. Deploying
          4. Template workspace
        10. Creating applications
          1. List of values
          2. Mapping the model to pages
            1. Base tables
            2. Master detail
            3. Intersection
            4. Simple report
            5. Other pages
        11. Summary
      8. 2. Leveraging the Database
        1. Instrumentation
        2. Efficient lookup tables
          1. Single-table hash clusters
          2. Index-organized tables
        3. Analytic functions
          1. Syntax overview
          2. Examples
            1. Running totals
            2. Visualizing the window
            3. Accessing values from other records
            4. Another way of accessing other rows in the result set
            5. Ranking—top N
            6. Stringing it all together
            7. Caveats
        4. Aggregate functions
          1. Grouping sets
            1. Rollup
            2. Cube
            3. Identifying the totals and subtotals with grouping
          2. Offloading your frontend and scheduling a job
            1. One-off job
            2. Pipelined table functions
            3. Pipelined table functions in APEX
            4. Using images
        5. Searching the contents of documents
        6. Summary
      9. 3. Printing
        1. Printing architecture
          1. What is planned for the future version of APEX Listener?
        2. Installation and configuration of the Apache FOP report server
          1. How to configure Apache FOP
          2. Business Intelligence Publisher
            1. Installation of Business Intelligence Publisher Version 11
            2. Simple print test using BI Publisher
        3. How to debug or troubleshoot printing issues
        4. How to check if network services are enabled
        5. Creating a report with BI Publisher
          1. Creating the report query
          2. Designing the report layout
            1. Downloading XML data
            2. Designing with the RTF template (MS Word)
          3. Uploading the report layout
          4. Linking the report to your application
        6. How to create a report that can deliver output in different formats
        7. How to add a chart to a report
          1. Creating a chart in a report
        8. How to add dynamic images to a report
        9. Print API
        10. How to bypass the 32K limit
        11. Alternatives to use for PDF printing
          1. Integration with Oracle Reports
          2. Integration with Cocoon
          3. Integration with JasperReports
            1. Architecture
        12. Plugins
          1. Reports 2 PDF
          2. Embedded PDF
        13. Summary
      10. 4. Security
        1. Securing Oracle Application Express for administrators
          1. Protecting the database environment
        2. Virtual Private Database
          1. VPD policy
          2. VPD and Application Context
          3. Implementing VPD in APEX
          4. What to do when you get a runtime exception
          5. Securing the web listener
            1. HTTP server
              1. Rewrite
              2. Security considerations in the HTTP server
          6. Embedded PL/SQL gateway
          7. Oracle Application Express Listener
            1. Enabling SSL for the web server
        3. Security considerations when installing Oracle Application Express
          1. Runtime installation
          2. Access Control Lists (ACLs)
          3. Enabling builders in Oracle Application Express
          4. Session timeout
            1. Instance level
            2. Application level
          5. Password complexity rules
          6. Patching strategy
        4. Security considerations for the developer
          1. Browser attacks
            1. Cross-site scripting (XSS)
            2. Protecting HTML regions and other static areas
            3. Protecting dynamic output
            4. Protecting reports regions
            5. Protecting form items
          2. SQL injection
            1. Insecure use of variables
            2. Correct use of Bind variables
            3. SYS.DBMS_ASSERT
          3. Security attributes
            1. Authentication
              1. Available 'out of the box' authentication schemes
              2. Oracle Application Express accounts
              3. Custom
              4. Database accounts
              5. HTTP header variable
              6. LDAP directory
              7. No authentication
              8. Open door credentials
              9. Single sign on
              10. Oracle Cloud identity management
            2. Authorization
              1. Creating an authentication schema from scratch
              2. Creating an access control administration page
              3. Applying authorization schemas
            3. Database schema
          4. URL tampering
            1. Session state protection against URL tampering
          5. Browser security attributes
            1. Cache
            2. Embed in Frames
            3. Database session
          6. Authorization and authentication plugin
          7. Secure items in an application
            1. Item encryption
            2. Hidden items protection
            3. Items of type password
            4. File upload items
            5. Managing instance security
            6. Application data
            7. Fake input
            8. Saving state before branching
          8. Utilities
            1. Application dashboard
          9. How to check the security of your application
            1. Oracle Application Express Advisor
            2. Third-party tools to check on security
        5. Summary
      11. 5. Debugging and Troubleshooting
        1. Debugging an APEX page
          1. Instrumentation of the APEX code
          1. The debug Advanced Programming Interface (API)
          2. The APEX debug message
        3. APEX and Oracle SQL Developer
        4. Remote debugging
          1. Steps to be performed in APEX
        5. JavaScript console wrapper
          1. Installation of the console wrapper
        6. Web development tools
          1. Firebug
            1. APEX and Firebug
          2. Debugging dynamic actions
          3. Yslow
          4. Error handling
          5. Logging and tracing
          6. Enabling/disabling logging
          7. Reports in Application Express that facilitate troubleshooting
          8. Application Express Advisor
        7. Summary
      12. 6. Deploy and Maintain
        1. Package your application, or not?
          1. Version control
            1. Subversion
        2. Deploying the database packages
        3. Deploying the APEX application
          1. Using the APEX environment
          2. Using the command-line interface
          3. Housekeeping the APEX repository
        4. Being active and proactive
          1. Feedback
            1. Activate feedback
            2. Processing entered feedback
          2. Weighted page performance
        5. Summary
      13. A. Database Cloud Service and APEX 4.2
        1. Oracle Public Cloud
          1. Packaged applications
            1. Plan for the future
          2. RESTful web services
            1. The RESTful Web Services wizard
          3. Data load feature (SQL Workshop/utilities/data load)
        2. Summary