Instance administrators can manage existing workspaces within an Oracle Application Express instance.
See Also:
Parent topic: Oracle Application Express Administration Services
Use the Existing Workspaces report to view an interactive report of existing workspaces. From the Existing Workspaces report, you can view or edit workspace details.
To view and edit existing workspaces:
Parent topic: Managing Existing Workspaces
Deleting a workspace does not remove any of the associated database objects. To remove the associated schemas, a database administrator (DBA) must use a standard database administration tool, such as Oracle Enterprise Manager or SQL*Plus.
See Also:
"Viewing the Workspace Summary Report" and "Creating Workspaces"
Parent topic: Managing Existing Workspaces
Learn how to identify and delete inactive workspaces.
Parent topic: Deleting a Workspace
If you are managing a large hosted Oracle Application Express instance, manually deleting inactive workspaces can free up resources for other users. The process of manually deleting inactive workspaces consists of the following steps:
Step 1: Identify inactive workspaces. See "Identifying Inactive Workspaces By Checking Recent Updates" and "Viewing Workspaces with Only a Sample Application."
Step 2: Remove the resources (that is, the database schemas, tablespaces, and data files) associated with each inactive workspace. See "Removing the Resources Associated with Inactive Workspaces."
Step 3: Drop the inactive workspaces from Oracle Application Express. See "Deleting Inactive Workspaces."
Tip:
To systematically purge inactive workspaces you must configure Workspace Purge settings. See "Purging Inactive Workspaces."
Parent topic: Identifying and Deleting Inactive Workspaces
The first step in determining if a workspace is inactive is to establish some basic rules. A common approach is to base the rules on the Oracle Application Express activity records found in the current Application Express engine schema.
The following DDL (data definition language) creates a table of all workspaces requested before June 28, 2004 but that have been inactive since June 10, 2004. In this example, inactivity is determined by checking a key within the Application Express engine schema for the most recent updates by each workspace.
ALTER SESSION SET CURRENT_SCHEMA = APEX_18100; CREATE TABLE ws_to_purge AS SELECT c.security_group_id, c.company_name, c.admin_email, c.request_date, SYSDATE last_updated_on, 'Y' ok_to_delete FROM wwv_flow_provision_company c WHERE c.request_date <= to_date('20040628','YYYYMMDD') AND ( not exists (SELECT NULL /* Activity Log */ FROM wwv_flow_activity_log l WHERE l.security_group_id = c.security_group_id AND l.time_stamp > to_date('20040610','YYYYMMDD')) ) AND NOT EXISTS (SELECT NULL /* workspace applications */ FROM wwv_flows f WHERE f.security_group_id = c.security_group_id AND f.last_updated_on > to_date('20040610','YYYYMMDD')) AND NOT EXISTS (SELECT NULL /* Pages */ FROM wwv_flow_steps s WHERE s.security_group_id = c.security_group_id AND s.last_updated_on > to_date('20040610','YYYYMMDD')) AND NOT EXISTS (SELECT NULL /* Regions */ FROM wwv_flow_page_plugs p WHERE p.security_group_id = c.security_group_id AND p.last_updated_on > to_date('20040610','YYYYMMDD')) AND NOT EXISTS (SELECT NULL /* Items */ FROM wwv_flow_step_items i WHERE i.security_group_id = c.security_group_id AND i.last_updated_on > to_date('20040610','YYYYMMDD')) AND NOT EXISTS (SELECT NULL /* Templates */ FROM wwv_flow_templates t WHERE t.security_group_id = c.security_group_id AND t.last_updated_on > to_date('20040610','YYYYMMDD')) AND NOT EXISTS (SELECT NULL /* Files uploaded */ FROM wwv_flow_file_objects$ o WHERE o.security_group_id = c.security_group_id AND o.created_on > to_date('20040610','YYYYMMDD')) AND NOT EXISTS (SELECT NULL /* SQL Workshop history */ FROM wwv_flow_sw_sql_cmds s WHERE s.security_group_id = c.security_group_id AND s.created_on > to_date('20040610','YYYYMMDD'));
Parent topic: Identifying and Deleting Inactive Workspaces
Another way to identify potentially inactive workspaces is to view the Workspaces with Only Sample Application report.
To view a report or workspaces only containing only a sample application:
Parent topic: Identifying and Deleting Inactive Workspaces
After you have identified inactive workspaces in a single table, the next step is to remove them.
Note:
Before removing the schemas, tablespaces, or data files associated with inactive workspaces, make sure these resources are not being used in any other workspace or application.
To remove the resources associated with inactive workspaces:
Parent topic: Identifying and Deleting Inactive Workspaces
Once you remove the resources associated with an inactive workspace, you can delete the workspace. You can delete inactive workspaces manually using the Oracle Application Express Administration Services application. Or, you can delete them programmatically as shown in the following PL/SQL example.
BEGIN FOR c1 IN (SELECT security_group_id FROM ws_to_purge WHERE ok_to_delete = 'Y') LOOP WWV_FLOW_PROVISIONING.TERMINATE_SERVICE_BY_SGID(c1.security_group_id); END LOOP; END;
Parent topic: Identifying and Deleting Inactive Workspaces
Delete workspaces in a full development environment.
To delete a workspace:
Parent topic: Deleting a Workspace
Delete workspaces in a runtime development environment.
To delete a workspace in a runtime development environment:
Parent topic: Deleting a Workspace
Instance administrators can lock a workspace to address security or performance issues.
Locking a workspace immediately locks all workspace administrator, developer, and user accounts in the workspace. It also changes the status of all applications in the workspace to Unavailable.
Warning:
Locking a workspace makes it permanently inaccessible.
To lock a workspace:
Parent topic: Managing Existing Workspaces
Instance administrators can view, edit, and remove schema and workspace assignment, associate additional schemas with a workspace, and create new schemas.
When users sign in to Oracle Application Express, they access a shared work area called a workspace. Each workspace can have multiple associated (or mapped) schemas. By associating a workspace with a schema, developers in that workspace can create new database objects in that schema and build applications that interact with the database objects in that schema.
See Also:
Parent topic: Managing Existing Workspaces
View an existing schema to workspace assignments in a full development environment.
To view an existing schema to workspace assignment:
Parent topic: Managing Workspace to Schema Assignments
View the existing schema to workspace assignments in a runtime environment.
To view the existing schema to workspace assignment in a runtime environment:
Parent topic: Managing Workspace to Schema Assignments
Edit existing schema and workspace assignments.
To edit an existing schema and workspace assignment:
Parent topic: Managing Workspace to Schema Assignments
Associate existing or new schemas with a workspace on the Manage Workspace to Schema Assignments page.
To associate an schemas with a workspace:
Parent topic: Managing Workspace to Schema Assignments
Associate additional schemas with a workspace in a runtime environment.
To associate additional schemas with a workspace in a runtime environment:
Parent topic: Managing Workspace to Schema Assignments
Remove a schema mapping from a workspace in a runtime environment.
To remove a schema mapping from a workspace in a runtime environment:
Parent topic: Managing Workspace to Schema Assignments
Control which components are available within an Oracle Application Express instance, including App Builder, SQL Workshop, PL/SQL Editing in SQL Workshop, Team Development, or installation of productivity and sample applications.
To configure component availability:
See Also:
Parent topic: Managing Existing Workspaces
Create a workspace message in Administration Services.
Workspace messages display both on the Workspace home page and on the Workspace Administration page. Nn the Workspace home page, workspace message display in the News and Messages region.
To define a workspace message:
See Also:
Parent topic: Managing Existing Workspaces
Perform a workspace search by clicking Find a Workspace on the Worspace Tasks page.
To perform a workspace search:
Parent topic: Managing Existing Workspaces
Instance administrators can configure limits to isolate a workspace and prevent browser attacks.
See Also:
"About Isolating Workspaces" in Oracle Application Express App Builder User’s Guide
Parent topic: Managing Existing Workspaces
Isolating workspaces is an effective approach to preventing browser attacks.
The only way to truly isolate a workspace is to enforce different domains in the URL by configuring the Allow Hostnames attribute. When the URLs of the attacker and the victim have different domains and hostnames, the browser's same-origin policy prevents attacks.
Parent topic: Isolating a Workspace to Prevent Browser Attacks
Configure Workspace Isolation attributes.
To configure Workspace Isolation attributes:
Parent topic: Isolating a Workspace to Prevent Browser Attacks
View workspace information by viewing the Workspace Summary Report.
To view the Workspace Summary Report:
Parent topic: Managing Existing Workspaces
View a summary of workspace database privileges on the Workspace Database Privileges page.
To view workspace database privileges:
See Also:
Parent topic: Managing Existing Workspaces
View total file size and file count by workspace on the File Utilization by Workspace page.
To view total file size and file count by workspace:
Parent topic: Managing Existing Workspaces
View total file size and file count by workspace on the File Utilization by Workspace page.
To find and email workspace summary:
Parent topic: Managing Existing Workspaces
Move a workspace and all associated users to a new Oracle Application Express instance by exporting and importing.
Tip:
To review recommendations about optimizing the development and deployment of Oracle Application Express applications throughout their life-cycle, see Life Cycle Management with Oracle Application Express. Go to Life Cycle Management with Oracle Application Express.
APEXExport
and APEXExportSplitter
programs located in the Utilities
folder in the downloaded installation zip file.Parent topic: Managing Existing Workspaces
To move a workspace and all associated users to a new Oracle Application Express instance, you export the workspace.
When you export a workspace, Oracle Application Express generates a text file. This file contains information about your workspace, all the users in your workspace, and any groups in your workspace (if applicable). You can import this file into another Oracle Application Express instance.
Exporting a workspace and importing it into a new database instance enables developers to import application components. When building new environments (for example, moving from development to testing or testing to production), Oracle recommends creating workspaces by importing them.
Keep in mind, this method only imports workspace, users, and groups. This file does not contain:
The schemas associated with this workspace or the objects in those schemas.
Any applications, images, cascading style sheets, and static text files.
These items must be exported separately.
See Also:
"Deploying an Application" in Oracle Application Express App Builder User’s Guide
Parent topic: Exporting and Importing a Workspace
Import a workspace by clicking Import Workspace on the Manage Workspaces page.
To import a workspace:
Parent topic: Exporting and Importing a Workspace
Export a workspace by clicking Export Workspace on the Manage Workspaces page.
To export a workspace:
Parent topic: Exporting and Importing a Workspace
You can also export workspaces, applications, and related files from a command-line using the APEXExport
and APEXExportSplitter
programs located in the Utilities
folder in the downloaded installation zip file.
APEXExport
program to export Oracle Application Express applications or workspaces from the command-line, without requiring a manual export from the Web interface of Oracle Application Express.APEXExportSplitter
program to split Oracle Application Express export files into separate SQL scripts. This is useful when managing files corresponding to the discrete elements of an Oracle Application Express application.Parent topic: Exporting and Importing a Workspace
Use the APEXExport
program to export Oracle Application Express applications or workspaces from the command-line, without requiring a manual export from the Web interface of Oracle Application Express.
Program Requirements
The APEXExport
program requires:
JDK (Java Development Kit) release 1.5 or higher
the Oracle JDBC class libraries must be in your CLASSPATH
About APEXExport
To use APEXExport
:
Set the CLASSPATH. For example:
On UNIX and Linux:
export CLASSPATH=.:${ORACLE_HOME}/jdbc/lib/ojdbc5.jar...from the Bash shell or ...
From the Bash shell or ...
set CLASSPATH=%CLASSPATH%;.\;%ORACLE_HOME%\jdbc\lib\ojdbc5.jar
On Windows:
From the apex/utilities
directory, issue the command:
java oracle.apex.APEXExport
Returns the following output with both usage directions and examples.
Usage APEXExport -db -user -password -applicationid -workspaceid -instance -expWorkspace -expMinimal -expFiles -skipExportDate -expPubReports -expSavedReports -expIRNotif -expTranslations -expTeamdevdata -expFeedback -deploymentSystem -expFeedbackSince -expOriginalIds -debug -expNoSubscriptions -expComments -expSupportingObjects -nochecksum -split -db: Database connect url in JDBC format -user: Database username -password: Database password -applicationid: ID for application to be exported -workspaceid: Workspace ID for which all applications to be exported or the workspace to be exported -instance: Export all applications -expWorkspace: Export workspace identified by -workspaceid or all workspaces if -workspaceid not specified -expMinimal: Only export workspace definition, users, and groups -expFiles: Export all workspace files identified by -workspaceid -skipExportDate: Exclude export date from application export files -expPubReports: Export all user saved public interactive reports -expSavedReports: Export all user saved interactive reports -expIRNotif: Export all interactive report notifications -expTranslations: Export the translation mappings and all text from the translation repository -expFeedback: Export team development feedback for all workspaces or identified by -workspaceid to development or deployment -expTeamdevdata: Export team development data for all workspaces or identified by -workspaceid -deploymentSystem: Deployment system for exported feedback -expFeedbackSince: Export team development feedback since date in the format YYYYMMDD -expOriginalIds: If specified, the application export will emit ids as they were when the application was imported -debug: Print debug output -expNoSubscriptions: Do not export references to subscribed components -expComments: Export developer comments -expSupportingObjects: Pass (Y)es, (N)o or (I)nstall to override the default -nochecksum: Overwrite existing files even if the contents have not changed -split: Split applications into multiple files
Single Application Example: APEXExport -db localhost:1521:ORCL -user scott -password scotts_password -applicationid 31500 All Applications in a Workspace Example: APEXExport -db localhost:1521:ORCL -user scott -password scotts_password -workspaceid 9999 All Applications in an Instance Example: APEXExport -db localhost:1521:ORCL -user system -password systems_password -instance Export All Workspaces Example: APEXExport -db localhost:1521:ORCL -user system -password systems_password -expWorkspace Export Feedback to development environment: APEXExport -db localhost:1521:ORCL -user scott -password scotts_password -workspaceid 9999 -expFeedback Export Feedback to deployment environment EA2 since 20100308: APEXExport -db localhost:1521:ORCL -user scott -password scotts_password -workspaceid 9999 -expFeedback -deploymentSystem EA2 -expFeedbackSince 20100308
Use the APEXExportSplitter
program to split Oracle Application Express export files into separate SQL scripts. This is useful when managing files corresponding to the discrete elements of an Oracle Application Express application.
Program Requirements
The APEXExportSplitter
program requires:
JDK (Java Development Kit) release 1.5 or higher
That Oracle JDBC class libraries must be in your CLASSPATH
About APEXExportSplitter
To use APEXExportSplitter
:
Set the CLASSPATH. For example:
On UNIX and Linux:
export CLASSPATH=.:$CLASSPATH
From the Bash shell or ...
set CLASSPATH=%CLASSPATH%;.\;
On Windows:
From the apex/utilities
directory, issue the command:
java oracle.apex.APEXExportSplitter
Returns the following output with usage directions.
Usage java oracle.apex.APEXExportSplitter filename -help : < print this syntax > -flat : < flat file structure > -debug : < print debug info > -update : < create update file > -nochecksum : < do not check for changes
To split an application export file and create a sub directories for each component type, issue the command:
java oracle.apex.APEXExportSplitter f123.sql
Where f123.sql
is the application export file.
To split an application export file containing the component type in the file name an not create any directories), issue the command:
java oracle.apex.APEXExportSplitter f123.sql -flat
Where f123.sql
is the application export file.
View applications by workspace on the Application Attributes page.
To view the Application Attributes page:
Parent topic: Exporting and Importing a Workspace
An Instance administrator can change the build status of an application.
Parent topic: Managing Existing Workspaces
Use the Build Status attribute to prevent an application from being modified by other developers.
The Build Status attribute has two settings:
Run and Build Application - Developers can both run and edit an application.
Run Application Only - Developers can only run an application.
Setting the Build Status to Run Application Only is an effective way to prevent other developers from modifying it.
Ways to Modify Build Status
You can change the Build Status of an application as follows:
Application-level - Developers and administrators can change the Build Status attribute on the Edit Application page. See "Availability" in Oracle Application Express App Builder User’s Guide.
Workspace-level - Workspace administrators can change the Build Status of applications within the current workspace on the Manage Application Build Status page. See "Changing Build Status for Multiple Applications."
Instance-level -Instance administrators can change the Build Status of an application on the Build Status page as described in "Changing Build Status in Administration Services."
Change a Build Status in Administration Services under Manage Workspaces, Manage Applications.
To change a Build Status in Administration Services:
Tip:
Note that if you select Build Application Only during deployment, the only way to change this setting is change it on the Build Status page in Oracle Application Express Administration Services.
Use the Parsing Schemas report to identify the current parsing schema of each application in any workspace.
The Parsing Schemas report identifies the Oracle database schema whose privileges are used when Application Express dynamically executes the application's SQL and PL/SQL code at runtime.
To view the Parsing Schemas report:
See Also:
"Managing Schemas" and "Managing Workspace to Schema Assignments"
Parent topic: Managing Existing Workspaces