Продолжаем рассказ о развертывании приложений Oracle Application Express, начатый в заметке "Развертывание приложений Apex : часть 1 (Export)". После того, как приложение было экспортировано из Apex-репозитария на одном сервере, его необходимо проимпортировать в репозитарий другого сервера...
Импорт выполняется через "Application Builder"->"Import"->"Application", где необходимо указать путь к файлу, в котором находится описание импортируемого приложения, тип информации в файле и кодировку:

Признаком успешного импорта файла в репозитарий является следующее сообщение:

Последним экраном импорта является описание установок развертывания приложения:

,где:
- Current Workspace - Название текущей рабочей области
- Export File Workspace - Название рабочей области импортируемого файла экспорта
- Export File Workspace ID - Идентификатор рабочей области импортируемого файла экспорта
- Export File Application ID - Идентификатор приложения в импортируемом файле экспорта
- Export File Version - Версия файла экспорта
- Export File Parse As Schema - В рамках какой Oracle схемы выполнялся экспорт файла
- Application Origin - Происхождение приложения
- Parse As Schema - В рамках какой Oracle схемы будет выполнять разбор файла экспорта
- Build Status - Статус приложения после импорта. "Run Application Only" - с приложением можно только запускать на выполнение. "Run and Build Application" - приложение можно как выполнять, так и изменять
- Install As Application - Идентификатор для нового приложения. "Auto Assign New Application ID" - автоматическое присвоение нового значения для ID приложения. "Reuse Application ID ... From Export File" - использование того ID приложения, который был у него во время экспорта. "Change Application ID" - изменить ID приложения вручную.
Все загруженные файлы хранятся в отдельном репозитарии, посмотреть который можно в "Application Builder" -> "Export Repository". То есть, даже если после развертывания приложение было удалено по каким - то причинам, его можно по-новой развернуть на сервере без повторного испортирта файл.
Кроме возможности развертывания приложения, в репозитарии есть функция удаления файлов импорта. И если уж сам файл удален из репозитария, то для импорта приложения необходимо будет снова выполнить импорт файла на сервер.
Если вдруг, во время установки приложения появилось сообщение:
This page was exported from a different application or from an application in different workspace.
Page cannot be installed in this application.
то необходимо проверить, что ID рабочей области (Workspace ID), откуда экспортировалось приложение, отличается от ID рабочей области, куда приложение устанавливается. В этом случае, надо просто изменить его в файле экспорта на значение Workspace ID, куда устанавливается приложение. Для этого, необходимо найти в начале файла экспорта следующую строку:
wwv_flow_api.set_security_group_id(p_security_group_id=> _Число_);
И заменить "_число_" на значение "Workspace ID", куда устанавливается приложение. Если вы его по каким-либо причинам его не знаете, то просто экспортируйте что-нибудь из этой рабочей области и в начале файла экспорта, в той же строке, будет нужный идентификатор. То есть, приложения должны переноситься между серверами только в рамках одной и той же рабочей области.
В заключении надо сказать, что Oracle Application Express позволяет экспортировать/импортировать не только приложение, но и отдельные его части: страницы , темы оформления, значения по умолчанию, CSS и т.д. В случае экспорта страницы из приложения, необходимо учитывать так же, что на новом сервере должны совпадать не только ID рабочей области, но ID приложения (документация на
OTN).
Подробнее...