Instances
- Last Updated: January 23, 2026
- 4 minute read
- OpenEdge
- Version 12.8
- Documentation
Instances are a standard Apache Tomcat feature. Instances independently run copies of the PAS for OpenEdge installation. Each instance runs on its own Java Virtual Machine (JVM), has its own configuration with unique ports, and hosts its own web applications. However, each instance runs a Tomcat server that uses a number of common files from the same $CATALINA_HOME directory. Each instance has an alias. The default value is the directory in which the instance was created, but it can be set to another string.
The following figure shows the relationship between the PAS for OpenEdge installation and any PAS for OpenEdge instance that is created:
When you create an instance, the root directory of the instance is
assigned to the CATALINA_BASE environment variable
within the scripts in the instance-path/bin directory. The root directory of the PAS
for OpenEdge installation is assigned to the CATALINA_HOME environment variable in the scripts in the instance-path/bin
directory. The scope of these environment variables is limited to the context of an
individual instance-path/bin scripts. For more information about
environment variables, see Catalina environment variables.
You set the PAS for OpenEdge installation directory and PAS for OpenEdge instance directory during the OpenEdge installation, and they must be different.
The default locations are described in About licensing and installation in Manage Progress Application Server (PAS) for OpenEdge.
Progress requires that you deploy your web applications to an instance of PAS for OpenEdge, rather than deploying to the PAS for OpenEdge installation directory. This practice prevents the accidental corruption of the installation executables, configuration settings, and libraries. It also prevents the accidental deletion of web applications if the PAS for OpenEdge installation directory is removed during an uninstall.
Some advantages of instances are:
- Updates to the Apache Tomcat server libraries and executables do not affect your web applications. You avoid needing to update the applications or re-configuring them.
- You can establish different security policies for each of the instances.
- You can tailor the JVM for individual applications because each instance runs in its own JVM with its own configuration.
- Instances provide a quick way to create a test server for experimenting with new configurations and applications without the danger of permanently corrupting an existing server.
As shown in the previous figure, all PAS for OpenEdge instances execute a set of common JAR files, scripts, and libraries from the following directories on the parent server:
- $CATALINA_HOME/lib
- $CATALINA_HOME/common/lib
- $CATALINA_HOME/bin
The structure of a PAS for OpenEdge instance (which is identified by an alias name and its OS file system path) includes the following directories:
- ablapps—A directory that lists the ABL applications deployed to the instance. Each instance is created with an ABL application of the same name listed in this directory.
- bin— A directory that
contains OpenEdge and customer-written utilities and libraries that are tailored to
that specific instance. For example, OpenEdge utilities are tailored to use the
local file space of the instance but load and use shared libraries and utilities of
the installation directory (in other words,
$CATALINA_HOME). - common/lib— A directory that
contains Java libraries and files that are shared across all of the web applications
of the instance, Note: The OpenEdge installation also has a common/lib directory that holds Java libraries and files shared by all web applications across all instances.
- conf— A directory that contains the Tomcat, OpenEdge, and customer-written configuration files of the instance that control only the applications deployed to the instance
- logs— A directory that contains the log files for the server instance, including all of log files for the server, web application, OpenEdge, and ABL application.
- work— A directory that contains the ABL web application-generated persistent working files. These files should not be deleted by an administrator as part of cleaning up before restarting an application.
- temp— A directory that contains the ABL web application-generated temporary files. These files can be deleted by an administrator as part of cleaning up before restarting the server instance.
- webapps| webapps-ref — A directory, or a reference to a directory, that contains the Tomcat, OpenEdge, and customer ABL web applications of the instance.
- openedge — A directory that contains .p and .r files, and the supporting files only for ABL applications. Other Progress and third-party web applications cannot write or read from this directory.
Additional information about instances in PAS for OpenEdge:
- An instance consists of one Apache Tomcat instance.
- An instance has a URI, for example: http://localhost:8810
- An instance has a default ABL application with the same name as the instance in the /ablapps directory.
- An instance can contain non-OpenEdge web applications (such as Progress Corticon, OpenEdge Manager, or a web UI) in the /webapps directory. OpenEdge web applications must be part of an ABL application (as specified in openedge.properties).
- An instance is the unit of deployment in a continuous integration and deployment model. Whole instances should be deployed with configurations stored in the /conf directory for all component parts. The component parts contribute their configurations up to the instance level.
- To deploy an instance, Progress recommends compressing the instance
folder, copying it to the production machine, and then registering and starting the
instance.
See Package an instance for production in Manage Progress Application Server (PAS) for OpenEdge.
- An instance has an /openedge directory in it that is added to the PROPATH by default. This directory should contain code or libraries that are shared across all ABL applications deployed to the instance, not code for a specific ABL application.