Oracle APEX has now reached version 20.2. It is a great tool low code tool to create web applications swiftly. Setup Oracle APEX and ORDS on Windows 10 is easy and it can be up and running within 40 minutes, more or less.
Being able to setup Oracle APEX 20.2 on your Windows 10 machine is good as it enables you to develop your web applications locally before copying it to the server. It makes a good staging ground as well to test updates before applying it on your production server later on.
But before installing Oracle APEX we need to have an Oracle database installed first. I am going to use the free Oracle Express Edition (Oracle XE) version 18c. Head over to Oracle’s product page and download your copy of Oracle XE 18c if you haven’t got one yet. You will need to have an Oracle account to download which is free to register as well.
Setup Oracle APEX and ORDS on Windows 10: Database installation
First and foremost we need to install the Oracle XE database. Installation is very straightforward. Launch the installer and follow the prompts.
Enter the password for the Oracle XE 18c database instance, the password will be used to login with the SYS, SYSTEM and PDBADMIN accounts. Do jot down or make the password memorable as it is needed during Oracle 20.2 installation on the database.
Continue with the setup and wait until it finishes. It took me around 15 minutes for the installation to finish.
Once the installation has finished, take a screenshot of the window below and save it. You might need it later as a reference to manage your Oracle XE 18c database.
The next step is to install Oracle APEX. I’ve chosen the latest version which is 20.2 which has been updated with more features and improvements. Head over to their blog to know more about the Oracle APEX 20.2 updates.
To continue with the setup, download a copy of Oracle APEX 20.2.
There are two versions of Oracle APEX 20.2 which supports multiple languages or English only. You can setup using either versions, the steps are the same but I will be using the version which supports multiple languages to cater to the user’s needs in my organization.
Unzip Oracle APEX and copy it to the C:temp folder. After that launch Windows PowerShell and navigate to the directory where you placed your Oracle APEX installation folder. In my case, it would be the C:tempapex folder.
Command used:
1. cd C:tempapex
Login into your database. The password used is the one you set when installing the Oracle XE 18c database. You can use the image below as reference.
Commands used:
1. sqlplus
2. sys as sysdba
3. show pdbs
4. ALTER SESSION SET CONTAINER = XEPDB1;
You can install Oracle APEX with the provided container or you can create a new container. Oracle XE allows up to 3 pluggable databases. In this guide, I am going to use the default XEPDB1 pluggable container.
The next step to setup Oracle APEX and ORDS on Windows 10 is to run the apexins.sql script.
Command used:
1. @apexins.sql SYSAUX SYSAUX TEMP /i/
It takes around 15 minutes for the Oracle APEX 20.2 installation to finish and you’ll see the status as below. Just enough time to brew a cup of good coffee and enjoy those precious sips.
Don’t forget to make a copy of the results, you might want to refer it later on.
Next on our to do list of setup Oracle APEX and ORDS on Windows 10 is to create the administrator account. To achieve this, use the apxchpwd.sql script as below.
Command used:
1. @apxchpwd.sql
Enter your preferred administrator username, e-mail address and password that you want to use to log into our fresh Oracle APEX instance later on.
The next step in setup Oracle APEX and ORDS on Windows 10 is to enable the REST services. Run the apex_rest_config.sql script and you will need to provide passwords for the APEX_LISTENER and APEX_REST_PUBLIC_USER.
Command used:
1. @apex_rest_config.sql
Then unlock the APEX_LISTENER, APEX_PUBLIC_USER and APEX_REST_PUBLIC_USER accounts and update their passwords with your preferred ones:
Commands used:
1. ALTER USER APEX_LISTENER IDENTIFIED BY **Password** ACCOUNT UNLOCK;
2. ALTER USER APEX_PUBLIC_USER IDENTIFIED BY **Password** ACCOUNT UNLOCK;
3. ALTER USER APEX_REST_PUBLIC_USER IDENTIFIED BY **Password** ACCOUNT UNLOCK;
Setup Oracle APEX and ORDS on Windows 10: Hosting ORDS on Apache Tomcat 9
So now, lets move on to set Oracle REST Database Services (ORDS). We are going to install ORDS on Apache Tomcat 9. Oracles recommends using ORDS as the web listener and it allows the creation of web services in Oracle APEX.
Previously installations of Oracle APEX permits the use PL/SQL gateway, but going forwards, ORDS is the number one choice.
Download ORDS and download Apache Tomcat 9 first if you have not done it yet.
As a prerequisite to this step please download and install Java 8 or later JRE in your Windows 10 machine. JRE is needed to run Java based programs.
During the Apache Tomcat 9 pre-installation, at the configuration options window you can set which HTTP 1.1 connector port you’d want to use. If you have other applications running on port 8080, you can use port 8181 for example. I will be using the default port 8080. Please set the Tomcat Administrator Login credentials as well so that you’ll be able to manage it later on.
To check whether your Tomcat 9 runs as intended, launch up your web browser and type in the address below and it will load the Tomcat management page.
http://localhost:8080/
*Replace port:8080 with your chosen port if it differs from mine.
Unzip ORDS and copy it to the C:temp folder. Create a new folder inside the ORDS folder and name it as ‘config‘. This folder is used to hold the ORDS configurations.
FYI, the ORDS version that I am using is: 20.2.1.227.0350.
Launch another PowerShell window and navigate to the directory where ORDS is located. In my case, that would be C:tempords.
Run the command as in number 2 below to start configuring ORDS. It will then inquire for information which you can refer with my configurations below, submitted info for the prompts are in bold and italic.
Commands used:
1. cd C:tempords
2. java -jar ords.war
Windows PowerShell
Copyright (C) Microsoft Corporation. All rights reserved.
Try the new cross-platform PowerShell https://aka.ms/pscore6
PS C:WINDOWSsystem32> cd C:tempords
PS C:tempords> java -jar ords.war
This Oracle REST Data Services instance has not yet been configured.
Please complete the following prompts
Enter the location to store configuration data: C:tempordsconfig
Enter the name of the database server [localhost]: Press 'Enter'
Enter the database listen port [1521]: Press 'Enter'
Enter 1 to specify the database service name, or 2 to specify the database SID [1]: Press 'Enter'
Enter the database service name:XEPDB1
Enter the database password for ORDS_PUBLIC_USER:
Confirm password: Enter your preferred password
Requires to login with administrator privileges to verify Oracle REST Data Services schema.
Enter the administrator username:sys as sysdba
Enter the database password for sys as sysdba: Enter password set for Oracle XE
Confirm password: Enter password set for Oracle XE
Connecting to database user: sys as sysdba url: jdbc:oracle:thin:@//localhost:1521/XEPDB1
Retrieving information.
Enter 1 if you want to use PL/SQL Gateway or 2 to skip this step.
If using Oracle Application Express or migrating from mod_plsql then you must enter 1 [1]: Press 'Enter'
Enter the database password for APEX_PUBLIC_USER: Enter password set for APEX_PUBLIC_USER during Oracle APEX 20.2 installation
Confirm password: Enter password set for APEX_PUBLIC_USER during Oracle APEX 20.2 installation
Enter 1 to specify passwords for Application Express RESTful Services database users (APEX_LISTENER, APEX_REST_PUBLIC_USER) or 2 to skip this step [1]: Press 'Enter'
Enter the database password for APEX_LISTENER: Enter password set for APEX_LISTENER during Oracle APEX 20.2 installation
Confirm password: Enter password set for APEX_LISTENER during Oracle APEX 20.2 installation
Enter the database password for APEX_REST_PUBLIC_USER: Enter password set for APEX_REST_PUBLIC_USER during Oracle APEX 20.2 installation
Confirm password: Enter password set for APEX_REST_PUBLIC_USER during Oracle APEX 20.2 installation
Enter a number to select a feature to enable:
[1] SQL Developer Web (Enables all features)
[2] REST Enabled SQL
[3] Database API
[4] REST Enabled SQL and Database API
[5] None
Choose [1]: 1
2021-02-19T05:35:19.047Z INFO reloaded pools: []
Installing Oracle REST Data Services version 20.2.1.r2270350
... Log file written to C:UsersTech201ords_install_core_2021-02-19_133519_00284.log
... Verified database prerequisites
... Created Oracle REST Data Services proxy user
... Created Oracle REST Data Services schema
... Granted privileges to Oracle REST Data Services
... Created Oracle REST Data Services database objects
... Log file written to C:UsersTech201ords_install_datamodel_2021-02-19_133540_00347.log
... Log file written to C:UsersTech201ords_install_apex_2021-02-19_133541_00983.log
Completed installation for Oracle REST Data Services version 20.2.1.r2270350. Elapsed time: 00:00:24.655
Enter 1 if you wish to start in standalone mode or 2 to exit [1]: 2
PS C:tempords>
The following step in this guide’s to setup Oracle APEX and ORDS on Windows 10 is to copy the ords.war file located at C:tempords to the Apache Tomcat webapps folder which during my Tomcat installation is set to the following path, C:Program Files (x86)Apache Software FoundationTomcat 9.0webapps.
If you look carefully, it will then generate an ords folder a few seconds later after you have copied over the ords.war file to that location.
Next, create a new folder and rename it as ‘i‘ at C:Program Files (x86)Apache Software FoundationTomcat 9.0webapps. Then copy over all the files and folders from C:tempapeximages to the ‘i‘ folder.
Last but not least, you can either go the Windows 10 system tray, locate the Tomcat 9 icon and stop and then start again the service or go to Windows 10 start and then type services.msc, locate the Apache Tomcat 9.0 service name and then restart it.
Now for the moment of truth, if all the configurations are correct you should now be able to load Oracle APEX in your browser by typing the below address:
http://localhost:8080/ords/
*Replace port:8080 with your chosen port if it differs from mine.
Enter the credentials that you set when you ran the apxchpwd.sql script to login into your Oracle APEX instance. For the Workspace field type in INTERNAL.
You are now ready to create your own distributed Workspaces and web applications.
Conclusion about how to setup Oracle APEX and ORDS on Windows 10
Setup Oracle APEX and ORDS on Windows 10 enables administrators to build web applications swiftly. It can as well be used as a staging ground prior to pushing updates to production servers. This is very useful to avoid disruptions on currently running web apps.
Setup requires a little bit of technical knowledge but it is possible for the layman who are interested in Oracle APEX to install on their Windows 10 powered computers.
If you are using a machine that is attached to a domain, you may need to run Microsoft PowerShell and install the related programs with administrator priviledge.
Furthermore, to makes things easier, I only used two passwords during the installation. One is for the Oracle XE and the other for everything else that was prompted.
One last tip, if you restart your Windows 10 machine and Oracle Apex does not load, launch ‘services.msc‘ and restart the ‘Apache Tomcat 9.0‘ service.
To recap the steps in the guide to setup Oracle APEX and ORDS on Windows 10:
Recap steps:
1. Install Oracle XE 18c database.
2. Install Oracle APEX 20.2.
3. Install Apache Tomcat 9.
4. Configure ORDS.
5. Test installation by loading up Oracle APEX 20.2 in your preferred browser.
Good luck!
Read more: How to easily install Ubuntu Focal Fossa LTS on Oracle Cloud Infrastructure
В посте рассматривается краткий обзор среды разработки Oracle APEX, пошаговая инструкция установки и настройки APEX версии 20.2 и ORDS версии 20.3 на Oracle Database 18c Express Edition.
Краткий обзор среды
разработки APEX.
Oracle Application Express (APEX) – это low-code платформа для разработки функциональных, масштабируемых и безопасных web-приложений. На сегодняшний день последней актуальной версией APEX является Oracle APEX 20.2. Данная версия выпущена в октябре 2020 года. Для установки и работы с APEX 20.2 в Oracle Database 18c Express Edition необходимо понимать принцип работы новой опции Oracle Database – Multitenant. Начиная с Oracle Database 12с поддерживается новая архитектура – Multitenant, которая предоставляет возможность использовать множество баз данных для консолидации их в составе единой и главной базы данных. Такое объединение упрощает задачи администрирования баз данных. Единая и главная база данных используется в качестве платформы и называется контейнерная база данных (Container Database – CDB), а база данных из множества работающих в составе контейнерной базы данных называется подключаемой базой данных (Pluggable Database – PDB). Архитектура Multitenat позволяет создать в Oracle Database 18с Express Edition одну CDB базу и до трех PDB баз. По умолчанию в Oracle Database 18с Express Edition APEX отсутствует. В связи с этим, для установки и работы с APEX необходимо подключиться к PDB и выполнять установку и настройку APEX. Ниже пошагово описывается процесс установки и настройки APEX 20.2 и Oracle REST Data Services версии 20.3 (далее ORDS) на Oracle Database 18c Express Edition, работающей на виртуальной машине под управлением операционной системы Oracle Linux. При использовании APEX 20.2 минимальная версия ORDS должна быть 19.1. Нижеописанные шаги также будут работать с Oracle Database 18c Express Edition установленной на операционную систему Windows.
Для информации: Кроме установки и использования платформы Oracle APEX на локальном компьютере, также есть возможность установить и использовать ее для разработки веб-приложений на бесплатном сервисе Always Free Service облака Oracle или же запросить и настроить свое рабочее пространство в бесплатном облачном сервисе apex.oracle.com. В данном посте рассматривается установка и доступ к среде разработки APEX на локальном компьютере.
Установка Oracle APEX 20.2. Предполагается, что есть успешно установленная Oracle Database 18c Express Edition. При необходимости, можно установить Oracle Database 18c Express Edition, используя следующие материалы: Установка Oracle Database 18c Express Edition на Linux и Установка Oracle Database 18c Express Edition на Windows. В посте подключение к PDB описываются различные способы подключения и работы в PDB.
Шаг 1. Установка
APEX на
Oracle Database 18c Express Edition
Oracle APEX распространяется бесплатно и установочный файл можно скачать с официального сайта Oracle – https://www.oracle.com/tools/downloads/apex-downloads.html
Для скачивания на портале Oracle необходимо наличие учетной записи с паролем. При ее отсутствии осуществляется регистрация новой учетной записи.
Пройдя по ссылке, выбирается версия Oracle APEX 20.2 – All languages.
После ознакомления и принятия условий лицензирования необходимо поставить галочку в разделе I reviewed and accept the Oracle License Agreement.
Нажать на «Download apex_20_2.zip». Запускается скачивание zip архива (apex_20.2.zip). Объем архива 228 Мб.
После завершения скачивания архив apex_20.2.zip нужно скопировать в директорию /home/oracle/ операционной системы Oracle Linux, работающей на виртуальной машине. Выполняется разархивирование файла и проверка содержимого архива:
[oracle@dushanbe ~]$ pwd /home/oracle [oracle@dushanbe ~]$ ls apex_20.2.zip Desktop Documents Downloads Music Pictures Public Templates Videos [oracle@dushanbe ~]$ ls -l apex_20.2.zip -rw-rw-rw-. 1 oracle oracle 239868057 Jan 14 22:50 apex_20.2.zip [oracle@dushanbe ~]# unzip apex_20.2.zip [oracle@dushanbe ~]$ ls apex apex_20.2.zip Desktop Documents Downloads Music Pictures Public Templates Videos [oracle@dushanbe ~]$ cd apex [oracle@dushanbe apex]$ pwd /home/oracle/apex [oracle@dushanbe apex]$ ls apexins1.sql apex_rest_config_cdb.sql apxdevrm_cdb.sql apxexit.sql apxremov_nocdb.sql apxrtins_nocdb.sql core dbcsins.sql apexins2.sql apex_rest_config_core.sql apxdevrm_nocdb.sql apxpatch_cdb.sql apxremov.sql apxrtins.sql coreins2.sql devins.sql apexins3.sql apex_rest_config_nocdb.sql apxdevrm.sql apxpatch_nocdb.sql apxrtins1.sql apxsdoins.sql coreins3.sql images apexins_cdb.sql apex_rest_config.sql apxdvins_cdb.sql apxpatch.sql apxrtins2.sql apxsilentins.sql coreins4.sql load_trans.sql apexins_cdb_upg.sql appins.sql apxdvins_nocdb.sql apxremov1.sql apxrtins3.sql apxupgrd.sql coreins5.sql utilities apexins_nocdb.sql apxappcon.sql apxdvins.sql apxremov2.sql apxrtins_cdb.sql builder coreins.sql apexins.sql apxchpwd.sql apxdwngrd.sql apxremov_cdb.sql apxrtins_cdb_upg.sql catapx.sql dbcsconf.sql [oracle@dushanbe apex]$
После разархивирования создалась папка apex с множеством sql скриптов для создания и настройки APEX. Необходимо из директории со скриптами (/home/oracle/apex/) подключиться к PDB XEPDB1 и начать установку APEX:
[oracle@dushanbe apex]$ sqlplus sys as sysdba SQL*Plus: Release 18.0.0.0.0 - Production on Sat Aug 8 11:21:28 2020 Version 18.4.0.0.0 Copyright (c) 1982, 2018, Oracle. All rights reserved. Enter password: Connected to: Oracle Database 18c Express Edition Release 18.0.0.0.0 - Production Version 18.4.0.0.0 SQL> show pdbs;CON_ID CON_NAME OPEN MODE RESTRICTED
--------------------------------------2 PDB$SEED READ ONLY NO
3 XEPDB1 READ WRITE NO
SQL> alter session set container = XEPDB1; Session altered. SQL> show pdbs;CON_ID CON_NAME OPEN MODE RESTRICTED
--------------------------------------3 XEPDB1 READ WRITE NO
SQL>
Подключение к XEPDB1 прошло успешно. Запускается скрипт apexins.sql для установки APEX со следующим синтаксисом:
@apexins.sql tablespace_apex tablespace_files tablespace_temp images
где, tablespace_apex – название табличного пространства для пользователя приложения APEX. tablespace_files – название табличного пространства для пользователя файлов APEX. tablespace_temp – название временного табличного пространства. images – виртуальная директория для изображений APEX. Для обеспечения корректного обновления APEX в будущем необходимо задать значение для этого параметра равное /i/.
Скрипт apexins.sql запускается со следующими значениями параметров:
SQL> @apexins.sql SYSAUX SYSAUX TEMP /i/ ... <Эта часть лога не приведена> ... # Actions in Phase 3: # ok 1 - BEGIN | 0.00 ok 2 - Computing Pub Syn Dependents | 0.00 ok 3 - Upgrade Hot Metadata and Switch Schemas | 0.00 ok 4 - Removing Jobs | 0.00 ok 5 - Creating Public Synonyms | 0.03 ok 6 - Granting Public Synonyms | 0.10 ok 7 - Granting to FLOWS_FILES | 0.00 ok 8 - Creating FLOWS_FILES grants and synonyms | 0.02 ok 9 - Creating Jobs | 0.00 ok 10 - Creating Dev Jobs | 0.00 ok 11 - Installing FLOWS_FILES Objects | 0.00 ok 12 - Installing APEX$SESSION Context | 0.00 ok 13 - Recompiling APEX_200200 | 0.05 ok 14 - Installing APEX REST Config | 0.02 ok 15 - Set Loaded/Upgraded in Registry | 1.32 ok 16 - Removing Unused SYS Objects | 0.00 ok 17 - Validating Installation | 0.03 ok 3 - 17 actions passed, 0 actions failed | 1.57 PL/SQL procedure successfully completed. Thank you for installing Oracle Application Express 20.2.0.00.20 Oracle Application Express is installed in the APEX_200200 schema. The structure of the link to the Application Express administration services is as follows: http://host:port/ords/apex_admin The structure of the link to the Application Express development interface is as follows: http://host:port/ords timing for: Phase 3 (Switch) Elapsed: 00:01:34.83 timing for: Complete Installation Elapsed: 00:14:57.61 PL/SQL procedure successfully completed. 1 row selected. …null1.sql SYS>
Выше приводится последняя часть лога установки APEX, так как система генерирует очень много строк лога. Лог показывает, что установка прошла успешно и заняла 14 мин 57 секунд времени.
Шаг
2. Настройки и подключение к APEX
После успешного
завершения установки необходимо создать пользователя с административными
правами в APEX
и
назначить ему пароль, настроить ORDS
и создать рабочее пространство для разработки приложений.
Для создания
администратора и назначения ему пароля запускается скрипт apxchpwd.sql в PDB. Данный скрипт в будущем также
может быть использован для сброса пароля существующему администратору APEX.
После запуска скрипта система предложит ввести пользовательское имя для администратора (login), его email и пароль. По умолчанию система предлагает ADMIN для пользовательского имени администратора (login). Если необходимо оставить пользователя по умолчанию, то поле Enter the administrator’s username [ADMIN] следует оставить пустым и нажать Enter. В поле Enter ADMIN’s email [ADMIN] можно указать свою электронную почту. В поле Enter ADMIN’s password [] надо назначить пароль администратора, который будет удовлетворять следующим требованиям:
- Пароль должен содержать не менее 6 символов.
- Пароль должен содержать не менее одного буквенного символа.
- Пароль должен содержать не менее одного символа пунктуации:
(!”#$%&()“*+,-/:;?_). - Пароль должен содержать не менее одного заглавного буквенного символа.
- Пароль должен содержать не менее одного строчного буквенного символа.
Иначе система выдаст следующую ошибку:
ORA-20001: Password validation failed. ORA-06512: at line 30 ORA-06512: at "APEX_200100.WWV_FLOW_FND_USER_INT", line 3744 ORA-06512: at line 20
Запускается скрипт для создания администратора с именем ADMIN и назначения его email и пароля:
SYS> @apxchpwd.sql …set_appun.sql ====================================================================================== This script can be used to change the password of an Application Express instance administrator. If the user does not yet exist, a user record will be created. ====================================================================================== Enter the administrator's username [ADMIN] User "ADMIN" does not yet exist and will be created. Enter ADMIN's email [ADMIN] test@***.tj Enter ADMIN's password [] Created instance administrator ADMIN. SYS>
Пользователь успешно создан.
Также важно настроить учетную запись APEX_PUBLIC_USER для управления Oracle Application Express. Учетная запись APEX_PUBLIC_USER создается со случайным и недоступным паролем во время установки Oracle Application Express. Если же выполняется обновление (upgrade) с предыдущей версии Oracle Application Express, то приведенные ниже две команды не являются необходимыми:
SYS> ALTER USER APEX_PUBLIC_USER ACCOUNT UNLOCK; SYS> ALTER USER APEX_PUBLIC_USER IDENTIFIED BY new_password;
Для новой установки APEX (а не обновление) необходимо запустить скрипт apex_rest_config.sql для настройки RESTful сервисов. После запуска потребуется назначить пароль для учетных записей APEX_LISTENER, APEX_REST_PUBLIC_USER. Ниже во время установки и настройки ORDS будет необходимо вводить пароли этих учетных записей.
SYS> @apex_rest_config.sql Enter a password for the APEX_LISTENER user [] Enter a password for the APEX_REST_PUBLIC_USER user [] …set_appun.sql …setting session environment …create APEX_LISTENER and APEX_REST_PUBLIC_USER users SYS>
Настройка ORDS
В APEX версии 20.2 уже не поддерживается Web Listener с типом Embedded PL/SQL Gateway и Oracle HTTP Server. В связи с этим, необходимо установить и использовать Oracle REST Data Services (ORDS). Далее описывается процесс установки и базовой настройки APEX с ORDS версии 20.3.
Для начала, необходимо скачать ORDS. Oracle ORDS распространяется бесплатно и установочный файл можно скачать с официального сайта Oracle – https://www.oracle.com/database/technologies/appdev/rest-data-services-downloads.html
Для скачивания на портале Oracle необходимо наличие учетной записи с
паролем. При ее отсутствии осуществляется регистрация новой учетной записи.
Пройдя по ссылке, скачивается файл Oracle REST Data Services.
После ознакомления и принятия условий лицензирования необходимо поставить галочку в разделе I reviewed and accept the Oracle License Agreement.
Нажать на «Download ords-20.3.0.301.1819.zip». Запускается скачивание zip архива (ords-20.3.0.301.1819.zip). Объем архива 70 Мб.
После завершения скачивания необходимо создать директорию ords в /home/oracle/ и архив ords-20.3.0.301.1819.zip нужно скопировать в созданную директорию /home/oracle/ords операционной системы Oracle Linux, работающей на виртуальной машине. Выполняется разархивирование файла и проверка содержимого архива:
[oracle@dushanbe ~]$ pwd /home/oracle [oracle@dushanbe ~]$ ls apex apex_20.2.zip Desktop Documents Downloads Music Pictures Public Templates Videos [oracle@dushanbe ~]$ mkdir ords [oracle@dushanbe ~]$ cd ords [oracle@dushanbe ords]$ pwd /home/oracle/ords [oracle@dushanbe ords]$ ls -l total 70440 -rw-rw-rw-. 1 oracle oracle 72130015 Jan 15 00:00 ords-20.3.0.301.1819.zip [oracle@dushanbe ords]$ [oracle@dushanbe ords]$ unzip ords-20.3.0.301.1819.zip [oracle@dushanbe ords]$ ls -l total 139944 drwxr-xr-x. 3 oracle oracle 21 Oct 27 18:43 docs drwxrwxrwx. 7 oracle oracle 93 Oct 23 14:42 examples -rw-rw-rw-. 1 oracle oracle 40033 Oct 23 14:42 index.html drwxrwxrwx. 2 oracle oracle 43 Oct 23 14:42 installer -rw-rw-rw-. 1 oracle oracle 72130015 Jan 15 00:00 ords-20.3.0.301.1819.zip -rw-r--r--. 1 oracle oracle 71128103 Oct 27 18:43 ords.war drwxrwxrwx. 2 oracle oracle 36 Oct 23 14:42 params [oracle@dushanbe ords]$
При использовании ORDS для работы с APEX приложениями ORDS должен быть настроен для обслуживания статических файлов APEX. Необходимо скопировать директорию images (apex/images) из домашней директории с установочными файлами APEX в папку файловой системы, где установлены службы Oracle REST Data Services. В данном примере домашняя директория APEX находится в /home/oracle/apex и директория установки ORDS в /home/oracle/ords.
[oracle@dushanbe ords]$ cd /home/oracle/apex/ [oracle@dushanbe apex]$ pwd /home/oracle/apex [oracle@dushanbe apex]$ ls apexins1.sql apex_rest_config_core.sql apxdevrm.sql apxpatch.sql apxrtins3.sql builder dbcsconf.sql apexins2.sql apex_rest_config_nocdb.sql apxdvins_cdb.sql apxremov1.sql apxrtins_cdb.sql catapx.sql dbcsins.sql apexins3.sql apex_rest_config.sql apxdvins_nocdb.sql apxremov2.sql apxrtins_cdb_upg.sql core devins.sql apexins_cdb.sql appins.sql apxdvins.sql apxremov_cdb.sql apxrtins_nocdb.sql coreins2.sql images apexins_cdb_upg.sql apxappcon.sql apxdwngrd.sql apxremov_nocdb.sql apxrtins.sql coreins3.sql install2021-01-14_23-10-38.log apexins_nocdb.sql apxchpwd.sql apxexit.sql apxremov.sql apxsdoins.sql coreins4.sql load_trans.sql apexins.sql apxdevrm_cdb.sql apxpatch_cdb.sql apxrtins1.sql apxsilentins.sql coreins5.sql utilities apex_rest_config_cdb.sql apxdevrm_nocdb.sql apxpatch_nocdb.sql apxrtins2.sql apxupgrd.sql coreins.sql [oracle@dushanbe apex]$ cp -r images/ /home/oracle/ords/ [oracle@dushanbe apex]$ cd /home/oracle/ords/ [oracle@dushanbe ords]$ pwd /home/oracle/ords [oracle@dushanbe ords]$ [oracle@dushanbe ords]$ ls docs examples images index.html installer ords-20.3.0.301.1819.zip ords.war params
Проверяется текущая версия JDK.
[oracle@dushanbe ~]$ java -version java version "15.0.1" 2020-10-20 Java(TM) SE Runtime Environment (build 15.0.1+9-18) Java HotSpot(TM) 64-Bit Server VM (build 15.0.1+9-18, mixed mode, sharing) [oracle@dushanbe ~]$
Результат команды показывает, что на этой операционной системе установлена и настроена 15-я версия JDK. В этом посте можно ознакомиться со способом проверки текущей версии JDK, а также при необходимости установить, обновить, настроить и использовать новую версию по умолчанию (см. раздел «Установка JDK»).
Есть вероятность, что при использовании старой версии JDK (например, 8 версия) запуск установки ORDS выдаст следующую ошибку:
Enter the location to store configuration data: /home/oracle/ords/config Exception in thread "main" java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at oracle.dbtools.jarcl.Entrypoint.invoke(Entrypoint.java:66) at oracle.dbtools.jarcl.Entrypoint.main(Entrypoint.java:77) Caused by: java.lang.OutOfMemoryError: Java heap space at java.util.Arrays.copyOf(Arrays.java:3236) at java.io.ByteArrayOutputStream.grow(ByteArrayOutputStream.java:118) at java.io.ByteArrayOutputStream.ensureCapacity(ByteArrayOutputStream.java:93) at java.io.ByteArrayOutputStream.write(ByteArrayOutputStream.java:153) at java.util.zip.DeflaterOutputStream.deflate(DeflaterOutputStream.java:253) at java.util.zip.DeflaterOutputStream.write(DeflaterOutputStream.java:211) at java.util.zip.ZipOutputStream.write(ZipOutputStream.java:331) at java.nio.channels.Channels$WritableByteChannelImpl.write(Channels.java:458) at oracle.dbtools.util.StreamCopy.drain(StreamCopy.java:44) at oracle.dbtools.util.StreamCopy.drain(StreamCopy.java:31) at oracle.dbtools.zip.ZipBuilder._addEntry(ZipBuilder.java:55) at oracle.dbtools.zip.ZipBuilder.addEntry(ZipBuilder.java:63) at oracle.dbtools.common.zip.ZipBuilder.addEntry(ZipBuilder.java:24) at oracle.dbtools.common.zip.MutatedZip.mutate(MutatedZip.java:68) at oracle.dbtools.common.zip.MutatedZip.(MutatedZip.java:34) at oracle.dbtools.cmdline.ModifyConfigDir.modified(ModifyConfigDir.java:145) at oracle.dbtools.cmdline.ModifyConfigDir.modify(ModifyConfigDir.java:117) at oracle.dbtools.cmdline.Commands.configurationContext(Commands.java:568) at oracle.dbtools.cmdline.Commands.prepareApplicationContext(Commands.java:447) at oracle.dbtools.cmdline.Commands.main(Commands.java:407) … 6 more
Есть два варианта установки ORDS:
- Автономный (standalone) режим.
- На сервере приложений (Oracle WebLogic Server, Apache Tomcat).
Далее описывается установка ORDS в standalone режиме.
Для начала установки и настройки ORDS необходимо запустить следующую команду: java -jar ords.war install advanced
После запуска команды система потребует предоставить данные для множества параметров. Ниже приведены некоторые параметры и их значения во время установки. Остальные параметры оставлены по умолчанию или не требуют дополнительного описания.
– Enter the location to store configuration data: указывается директория настроек ORDS. Можно указать любую директорию. В данном примере указана следующая директория: /home/oracle/ords/config
– Enter the administrator username: Необходимо указать логин и пароль учетной записи базы данных с правами sysdba.
[oracle@dushanbe ords]$ java -jar ords.war install advanced This Oracle REST Data Services instance has not yet been configured. Please complete the following prompts Enter the location to store configuration data: /home/oracle/ords/config Specify the database connection type to use. Enter number for [1] Basic [2] TNS [3] Custom URL [1]: Enter the name of the database server [localhost]:dushanbe Enter the database listen port [1521]: Enter 1 to specify the database service name, or 2 to specify the database SID [1]: Enter the database service name:XEPDB1 Enter 1 if you want to verify/install Oracle REST Data Services schema or 2 to skip this step [1]: Enter the database password for ORDS_PUBLIC_USER: Confirm password: Requires to login with administrator privileges to verify Oracle REST Data Services schema. Enter the administrator username:sys Enter the database password for SYS AS SYSDBA: Confirm password: Connecting to database user: SYS AS SYSDBA url: jdbc:oracle:thin:@//dushanbe:1521/XEPDB1 Retrieving information. Enter the default tablespace for ORDS_METADATA [SYSAUX]: Enter the temporary tablespace for ORDS_METADATA [TEMP]: Enter the default tablespace for ORDS_PUBLIC_USER [USERS]: Enter the temporary tablespace for ORDS_PUBLIC_USER [TEMP]: Enter 1 if you want to use PL/SQL Gateway or 2 to skip this step. If using Oracle Application Express or migrating from mod_plsql then you must enter 1 [1]: Enter the PL/SQL Gateway database user name [APEX_PUBLIC_USER]: Enter the database password for APEX_PUBLIC_USER: Confirm password: Enter 1 to specify passwords for Application Express RESTful Services database users (APEX_LISTENER, APEX_REST_PUBLIC_USER) or 2 to skip this step [1]: Enter the database password for APEX_LISTENER: Confirm password: Enter the database password for APEX_REST_PUBLIC_USER: Confirm password: Enter a number to select a feature to enable: [1] SQL Developer Web (Enables all features) [2] REST Enabled SQL [3] Database API [4] REST Enabled SQL and Database API [5] None Choose [1]: 2021-01-07T18:32:25.400Z INFO reloaded pools: [] Installing Oracle REST Data Services version 20.3.0.r3011819 … Log file written to /home/oracle/ords_install_core_2021-01-07_233226_00133.log … Verified database prerequisites … Created Oracle REST Data Services proxy user … Created Oracle REST Data Services schema … Granted privileges to Oracle REST Data Services … Created Oracle REST Data Services database objects … Log file written to /home/oracle/ords_install_datamodel_2021-01-07_233302_00744.log … Log file written to /home/oracle/ords_install_apex_2021-01-07_233311_00188.log Completed installation for Oracle REST Data Services version 20.3.0.r3011819. Elapsed time: 00:00:52.120 Enter 1 if you wish to start in standalone mode or 2 to exit [1]:1 Enter the APEX static resources location:/home/oracle/ords/images Enter 1 if using HTTP or 2 if using HTTPS [1]: Enter the HTTP port [8080]: 2021-01-07T18:43:03.267Z INFO HTTP and HTTP/2 cleartext listening on host: localhost port: 8080 2021-01-07T18:43:03.311Z INFO Disabling document root because the specified folder does not exist: /home/oracle/ords/params/ords/standalone/doc_root 2021-01-07T18:43:06.167Z INFO Configuration properties for: |apex|| cache.caching=false cache.directory=/tmp/apex/cache cache.duration=days cache.expiration=7 cache.maxEntries=500 cache.monitorInterval=60 cache.procedureNameList= cache.type=lru database.api.enabled=true db.connectionType=basic db.hostname=dushanbe db.port=1539 db.servicename=XEPDB1 debug.debugger=false debug.printDebugToScreen=false error.keepErrorMessages=true error.maxEntries=50 feature.sdw=true jdbc.DriverType=thin jdbc.InactivityTimeout=1800 jdbc.InitialLimit=3 jdbc.MaxConnectionReuseCount=1000 jdbc.MaxLimit=10 jdbc.MaxStatementsLimit=10 jdbc.MinLimit=1 jdbc.statementTimeout=900 log.logging=false log.maxEntries=50 misc.compress= misc.defaultPage=apex restEnabledSql.active=true security.disableDefaultExclusionList=false security.maxEntries=2000 security.requestValidationFunction=wwv_flow_epg_include_modules.authorize security.validationFunctionType=plsql db.password= db.username=APEX_PUBLIC_USER resource.templates.enabled=true
На этом завершается установка и настройка APEX с ORDS. Можно подключиться к Oracle APEX 20.2 по следующему адресу: http://localhost:8080/ords
Вместо localhost можно указать адрес 127.0.0.1 или IP адрес хоста. В примере используется IP адрес хоста равный 192.168.0.1. Запускается веб-браузер и выполняется переход к следующему адресу:
http://192.168.0.1:8080/ords
Для информации: по умолчанию, для того чтобы получить доступ к корню APEX через сервисы ORDS необходимо перейти по пути /ords. Если есть необходимость использовать путь /apex для доступа к APEX, то потребуется переименовать файл ords.war в apex.war перед началом установки и настройки ORDS.
После завершения установки автоматически создается рабочее пространство (workspace) для выполнения административных задач в APEX. Название workspace – INTERNAL. Выполняется подключение к административному workspace под пользователем ADMIN и его паролем (данный пользователь и его пароль были созданы при запуске скрипта apxchpwd.sql (см. выше)).
После успешного входа система запросит создать новое рабочее пространство для разработки приложений:
Далее задается название, идентификатор и описание рабочего пространства. В примере ниже задается имя рабочего пространства «Dushanbe» и краткое описание. По умолчанию система сама генерирует идентификатор рабочего пространства.
На этапе Identify Schema надо будет указать название схемы (пользователя базы данных), к которой будет привязано новое рабочее пространство. Если в поле Re-use existing schema выбран No, то в поле Schema Name необходимо указать название нового пользователя/схемы, в поле Schema Password задать ему пароль, а в поле Space Quota (MB) назначить ему квоту на использование пространства в табличном пространстве.
В примере для поля Re-use existing schema выбирается значение Yes и в Schema Name указывается тестовая и учебная схема/пользователь hr.
Это даст возможность использовать связанные таблицы с готовыми тестовыми данными, представления, триггеры, данные и другие объекты схемы hr во время создания приложений в APEX.
Нажимается Next и выполняется переход на шаг создания пользователя с административными правами для нового создаваемого пространства – Dushanbe. Для нового пространства тоже создается пользователь с именем Admin. Указываются пароль, имя, фамилия и email администратора нового создаваемого пространства для разработки приложений:
Нажимается Next и выполняется переход на следующий шаг – подтверждения настроек нового рабочего пространства:
После нажатия Create Workspace начнется создание рабочего пространства и при успешном завершении система выдаст следующее сообщение:
Это означает, что в APEX успешно создано новое рабочее пространство с именем Dushanbe. Нажатие кнопки Done позволит пользователю ADMIN получить доступ к своему рабочему пространству (INTERNAL) и начать работу:
Выполняется выход пользователя ADMIN из административного рабочего пространства (workspace) INTERNAL. Для этого в правом верхнем углу нажимается на имя пользователя и нажимается на Sign Out.
Нажимается на Return to Sign in Page и на новой странице указываются данные для подключения к новому рабочему пространству (workspace) Dushanbe:
При первом входе администратору нового рабочего пространства (workspace) необходимо самостоятельно сменить пароль:
После успешной смены пароля администратор workspace Dushanbe получает доступ к среде:
Рабочее пространство Dushanbe готово для начала разработки веб-приложений.
Необходимо учитывать, что после перезагрузки операционной системы сервис будет недоступен. Для запуска ORDS необходимо вручную запустить следующую команду java -jar ords.war standalone из директории ords (в данном примере из /home/oracle/ords):
[oracle@dushanbe ords]$ pwd /home/oracle/ords [oracle@dushanbe ords]$ java -jar ords.war standalone
Если закрыть консоль операционной системы, то сервис ords выполнявшийся в ней завершится. Во избежание этого необходимо команду java -jar ords.war standalone запустить в фоновом режиме, используя nohup:
[oracle@dushanbe ords]$ nohup java -jar ords.war standalone &
При необходимости можно написать скрипт на уровне операционной системы, который будет запускать последнюю команду из нужной директории, и записывать детальную информацию о запуске в определенный лог файл для последующего анализа в будущем.
In this blog we are going to explore the Apex 20.1 Installation on Oracle 12 Pluggable Database | Windows 10 Machine using ORDS (Web listener).
Oracle REST Data Services (ORDS) – Java EE based RESTful service.
Installation Requirement : Database Requirement/SGA PGA Memory/Web Listener/etc. Please refer Oracle Doc Link
In this blog we are going to install ā’pěks using Oracle 12c Database Pluggable along with ORDS as web listener.
Apex Installation Steps:
Download Apex 20.1 & Unzip: Oracle Download Link
Select your installation type. Full Development or Runtime. Based on the installation type: Start the installation. In this blog we are going to setup full development environment. Installation Guide Oracle Link
Step 1. Open command prompt “Run as administrator” . Change directory where all apex scripts are present in the unzipped location of apex (~apex_20.1_enapex). Login database where you want to install. Login using sys as sysdba
Execute this script after providing table space names and image path :
@apexins.sql <tablespace_apex> <tablespace_files> <tablespace_temp> images
Step 2. Execute this script, which enables you to create your Instance Administrator account. You have to provide administrator name, email & strong password with punctuation.
@apxchpwd.sql
Step 3. Setting up APEX_PUBLIC_USER
ALTER USER APEX_PUBLIC_USER ACCOUNT UNLOCK;
ALTER USER APEX_PUBLIC_USER IDENTIFIED BY <PASSWORD>;
Step 4. Configure RESTfull Services. Here we need to provide password for users : APEX_LISTENER & APEX_REST_PUBLIC_USER
@apex_rest_config.sql
Here Apex Installation is done. Just check schema created by the apex installation. Next step is to setup web listener.
- select * from all_users where username like ‘%APEX%’ ;
- select * from all_users where username like ‘%FLOWS%’ ;
Refer this video for Apex Installation :
ORDS Installation:
Oracle REST Data Services (ORDS) – Java EE based RESTful service which is used to replace Oracle HTTP server and mod_plsql. Download ORDS: Link
In this blog we are going to setup the ORDS using Tomcat. You have other options also like standalone & weblogic. Please refer Installation Guide: Link
Apache Tomcat Download: https://tomcat.apache.org/download-90.cgi
Pretty much straight forward installation. After installation is completed see below steps to validate. Check services : win + r -> services.msc -> Check Apache Tomcat 9 Service. It should be running. Open browser & hit: http://localhost:8080/ . You will see Apache page i.e. Apache Tomcat is up & running.
ORDS Installation Steps
Step 1. Check these schema properly able to access or not. Remember the passwords. In next steps we will provide passwords of these users as parameter.
- APEX_PUBLIC_USER
- APEX_LISTENER
- APEX_REST_PUBLIC_USER
- SYS AS SYSDBA
Step 2. Unzip ords download folder some where like C:ordsords-19.2.0.199.1647. Created conf folder to hold ords configuration : C:ordsconf
Go and edit : C:ordsords-19.2.0.199.1647paramsords_params.properties. You have to provide all details of your database & passwords of apex users. See below sample my param file.
db.hostname=localhost db.port=1521 db.servicename=ORCLPDB db.username=APEX_PUBLIC_USER db.password=Welcome123 migrate.apex.rest=false plsql.gateway.add=true rest.services.apex.add=true rest.services.ords.add=true schema.tablespace.default=APEX schema.tablespace.temp=TEMP standalone.mode=false user.apex.listener.password=Welcome#123 user.apex.restpublic.password=Welcome#123 user.public.password=Welcome#123 user.tablespace.default=APEX user.tablespace.temp=TEMP sys.user=SYS sys.password=om restEnabledSql.active=true feature.sdw=true database.api.enabled=true
Step 3. Change directory where ords.war is present & run below command
java -jar ords.war configdir C:ordsconf
Step 4. Install Ords using : java -jar ords.war
After installation validate ords using: java -jar ords.war validate
Step 5. This step is depends on the installation type as here we have used Tomcat Apache. So we have do the final steps. Refer installation guide for other installation type.
- Check the tomcat installation directory like : C:Program FilesApache Software FoundationTomcat 9.0webapps
- Copy images from apex download folder (~Downloadsapex_20.1_enapeximages) to tomcat (~webappsi)
- Copy ords.war file from ords download folder (~ords-19.2.0.199.1647ords.war) to tomcat webapps (~webapps).
- Check Apex. http://localhost:8080/ords
Refer this video for ORDS installation:
Create Workspace & Start working on low-code development of application.
Oracle Apex | Create Workspace & Developer Users
Thanks!
Happy Learning! Your feedback would be appreciated!
Follow @shobhitsinghIN
Hello guys
Referenced documents:
https://matthiashoys.wordpress.com/2012/04/06/uninstallation-of-apex-from-a-default-oracle-11gr2-database/
https://www.oracledbwr.com/oracle-apex/oracle-application-express-18-1-installation/
Let us see how Oracle APEX (Which will eventually replace Oracle FORMS (regardless whether you like that fact or not) for small to medium applications) could be installed on your Windows 10/Server this time.
We’ll be trying the latest version of ORACLE APEX 18.2 & Windows 10 Pro running the latest version 1809 (as on date, fully patched) and Oracle database 11g R2 (11.2.0.4). Oracle depends upon VC++ components loads, so make sure your Windows box is fully patched.
Step #1
Download Oracle APEX installer from APEX repository. Please note, for APEX 18.x, you MUST have 11G R2 11.2.0.4 or later database. 11g R2 11.2.0.4 is only available for customers with valid support, hence if you are a student, freelancer, you best bet is 12c database, that is still freely available to download.
Step #2
Unzip the downloaded .zip file to a finely structured directory. For example, you can extract the zip file to D:APEX, that will create another “apex” folder within “D:APEX”. Check the attached image
I usually keep all the Oracle Installers under a single folder, called “D:Oracle_Installers”. So basically the rest of the instructions, I will be using the same directory structure. Please don’t get confused.
Step #3
Switch to the apex folder from an elevated command prompt, in my case to “D:Oracle_Installersapex_18.2apex”. Source the database environment (eg: SET ORACLE_SID=ORCL) in case if you have multiple Oracle products installed in the same box
Step #4
Start SQLPLUS as sysdba
A default installation of 11g R2 installs APEX, which you should remove at this stage. If you are too eager to know which version is installed, you my run the following query
select version from dba_registry where comp_id='APEX';
If you haven’t removed the APEX installation, it should return you a row with installed version information of APEX
You should remove the existing APEX prior installing the 18.x version(s). To remove the installed version, please execute as following
@apxremov.sql
Wait for the uninstallation to complete, exit SQL and start SQLPLUS once again as sysdba (Mandatory)
Now we can start the installation of APEX 18.x. Prior starting the installation let us create a dedicated tablespace for APEX.
CREATE TABLESPACE APEX DATAFILE 'D:ORADATAORCLapex01.db' SIZE 1G;
Now execute the SQL for installing APEX 18.x
@apexins APEX APEX TEMP /i/
(Note the forward slash "/")
Wait for the installation to finish. My box has a SSD, hence the installation completes in few minutes time (3-5 minutes I believe). It may take bit more time, depending upon the hardware resources available.
Once the installation completes successfully, we have to configure the APEX. To configure execute “apex_epg_config.sql” that is available in the current path. Please note, here is the catch, as with the installation, Oracle expects forward slashes around the parent folder where you have the image files. So, I have extracted the installation files to “D:Oracle_Installersapex_18.2” & this is the PARENT directory for apex installer. Hence we will call the EPG script as below (correct your path appropriately)
@apex_epg_config.sql D:/Oracle_Installers/apex_18.2/
(Note all back slashes are replaced with forward slashes)
Once the script finally exists after successfully copying the image files to APEX repositories, you need to unlock the following Oracle database schemas
ALTER USER anonymous ACCOUNT UNLOCK;
ALTER USER xdb ACCOUNT UNLOCK;
ALTER USER apex_public_user ACCOUNT UNLOCK;
ALTER USER flows_files ACCOUNT UNLOCK;
Now, go ahead with the last configuration by executing
@apxconf.sql
This script will ask for ADMIN user details, Select ADMIN as admin user and provide an email address. Please note, you must provide a punctuation symbol for the password and allowed punctuations are as below
(!"#$%&()``*+,-/:;?_).
That’s all folks. If there are no errors, you are all good to go. You may need to configure your database server for better performances, which we will discuss bit later.
Now try to access the APEX installation. Unless you have changed the ports, you should able to access the portal by visiting http://localhost:8080/apex/apex_admin
regards,
rajesh