HowTo Install

Legal Information

The program(s) and/or file(s) are supplied as is. The authors disclaims all warranties, expressed or implied, including, without limitation, the warranties of merchantability and of fitness for any purpose. The authors assumes no liability for damages, direct or consequential, which may result from the use of these program(s) and/or file(s).

If you have further questions, please contact me at apexlib@oracleapex.info

Overview
Before you begin

Because nobody reads post-installation instructions, the important information at the beginning! :-)

I would really appreciate it if you would inform me if you are using the ApexLib Framework. I'm curious how many are actively using it and how much effort I should put into the framework. If you like it, donate a small amount to support my development efforts. Thanks a lot!

If you have suggestions or problems

Just drop a note to apexlib@oracleapex.info, create a feature/bug report on Sourceforge - Tracker or write a message in the Support Forum.

Thanks for your attention and have fun using the ApexLib Framework!

Stay informed by subscribing to the RSS feed. If you prefer, you can also be
notified by e-mail.
Installation Requirements

The ApexLib Framework currently supports the Oracle APEX versions 2.0, 2.1 (included with Oracle XE), 2.2.x, 3.0, 3.1 and 3.2.

Feature Restrictions

Depending on the installation option you select and the Oracle APEX version you have, the ApexLib Framework might not be able to activate all features.

APEX 2.2.x doesn't expose all the meta-data of the application through the repository views, that's why the Framework is unable to determin all settings. If you want to use all features for APEX 2.2.x you have to choose the "Fast direct table access" option of the Install into its own APEXLIB schema installation option or upgrade to APEX 3.x.

If you use APEX 2.2.x and you choose the

  • Access through the slower APEX repository views of the "Install into its own APEXLIB schema" option or
  • Install into the application schema

the following features will not be available

  • Page Flow Diagram Generator.
  • Determine "Report Column Heading" for Validation Error Messages if the type is different to "Custom".
  • Browser/Server side validation if the Region Title isn't unique on the page.
Install into its own APEXLIB schema
This installation option works with all Oracle APEX versions.

Just one copy of the views and packages are installed, they will be accessable for all APEX applications.

  1. Open a command box.
    Eg on Windows Start/Execute => cmd
  2. Change into the directory "Scripts"
    cd Scripts
  3. Connect with SYS to create the APEXLIB schema. See ApexLib_create_apexlib_schema.sql why SYS and not an user with DBA privileges is required.
    sqlplus "sys/password@database as sysdba"
  4. Execute the following script to create the schema APEXLIB and all the necessary privileges
    @ApexLib_create_apexlib_schema.sql
  5. For faster execution, ApexLib can directly access (select only) the APEX repository tables in the FLOWS_xxx schema
    or it can use the APEX repository views if there are security concerns to grant read access to the FLOWS_xxx tables.
    Note: From APEX 3.2 on tables reside in Schema APEX_xxx

    1. Fast direct table access (works for all APEX versions)
      1. Execute the following script:
        @ApexLib_grant_apex_tables.sql
      2. Connect with the APEXLIB schema.
        connect apexlib/password@database
      3. Execute the following script:
        @../DataModel/ApexLib_views_for_apex_tables.sql
    2. Access through the slower APEX repository views (only works with APEX version 2.2.x and 3.x)
      1. Connect with the APEXLIB schema.
        connect apexlib/password@database
      2. Execute the following script:
        For 3.x:
        @../DataModel/ApexLib_views_for_apex_views_30.sql
        For 2.2.x:
        @../DataModel/ApexLib_views_for_apex_views_22.sql
  6. Execute the following installation scripts: (connected as APEXLIB schema)
    1. @ApexLib_install_into_apexlib_schema.sql
    2. @ApexLib_grant_create_synonyms.sql
      When asked enter PUBLIC or your application schema.
  7. Lock the APEXLIB schema with a DBA user.
    ALTER USER APEXLIB ACCOUNT LOCK;
Install into the application schema
This installation option only works with Oracle APEX version 2.2.x and 3.x

The views and packages are installed into each application schema. They have to be installed into the "Parsing Schema" as defined in "Application\Edit Attributes\Definition". This version is probably a little bit slower, because it's using the APEX repository views which are doing a lot of other stuff for security reasons.

If you are still on APEX 2.2.0.00.32, please read the following information first!
  1. Open a command box.
    Eg on Windows Start/Execute => cmd
  2. Change into the directory "Scripts"
    cd Scripts
  3. Connect to your application schema:
    sqlplus [application schema]/password@database
  4. Execute the following installation script:
    @ApexLib_install_into_application_schema.sql
    If your application schema doesn't have access to the SYS.UTL_FILE package, the ApexLib_PageFlowDiagram package will be invalid. Ask your DBA that he grants you the EXECUTE privilege on this package. If he doesn't want to grant it, you can install the Utl_File_Replacement.pks and .pkb files to get the ApexLib_PageFlowDiagram valid. But in that case you will not be able to use the file option which is offered by the interface.
  5. That's it! No additional grants or synonyms are necessary.
Install on apex.oracle.com

If you want to install the framework on apex.oracle.com you don't have SQL*Plus access to do a regular installation. That's why I have created an empty application which includes all the views and packages of the framework as supporting objects to make the installation as painless as possible.

You can find the application in the Examples directory.

The upload and installation on apex.oracle.com can take some time, so please be patient, that's normal.
Upgrade an existing version of ApexLib

If you have already installed ApexLib and want to upgrade to a new version, just follow the regular installation steps of the option you used the last time.

If you used "Install into its own APEXLIB schema", you can skip the step
@ApexLib_create_apexlib_schema.sql
to create the ApexLib schema!

For the necessary changes in the application, see the change log entries between your current ApexLib version and the new version.

Integration into your application

To integrate the ApexLib Framework into your application, follow the steps in the How to integrate document.

For a description of the features check out the ApexLib postings on my blog.

Integration into your Oracle APEX Builder IDE

Check out the Oracle APEX Builder Plugin which offers a seamless integration of the ApexLib configuration settings into the Oracle APEX Builder IDE so that you do not have to remember all the ApexLib tags ($APEXLIB_xxx$).

  1. Download the ApexLib integration files.
  2. Install and configure the Plugin as described on the web page.
Installation of the Example Application

In the Examples directory you will find the "Feature Demonstration" application which demonstrates how the different ApexLib Hints are used to configure the ApexLib Framework.

It's a regular Oracle APEX application which can be imported into a workspace. The parsing schema has to be the HR schema. If you don't have installed this schema yet, you will find the necessary installation scripts in the hr.zip which is also contained in the Examples directory.

Uninstall the ApexLib Framework

Are you sure that you want to uninstall the framework?!?! ;-)

  • If you have created public synonyms for the ApexLib Framework, connect to the database with the APEXLIB schema and execute the following script.
    @ApexLib_uninstall.sql
  • If you have installed the framework into the APEXLIB schema, connect to the database with a DBA user and drop the APEXLIB schema.
    DROP USER APEXLIB CASCADE;
  • If you have created synonyms for each application schema or if you have installed the framework into the application schema, connect to the the application schema and execute the following script.
    @ApexLib_uninstall.sql