An ABL application is a container for ABL web applications. The hierarchy of components is as follows:
  • A PAS for OpenEdge instance can contain multiple ABL applications.
  • Each ABL application can contain multiple web applications.
  • Each web application, in turn, can contain multiple ABL services.
  • Each ABL service is bound to a PAS for OpenEdge transport and is mapped to ABL resources (ABL classes and procedures).
Note: As a Service Developer, you create ABL services in an OpenEdge project in Progress Developer Studio for OpenEdge. The project can be packaged into a web application archive (WAR) file and deployed to PAS for OpenEdge.

In addition to containing web applications, each ABL application has a session manager that launches one or more multi-session agents to process client requests. A multi-session agent is an operating system process that starts a session within which a client request is executed.

PROPATH

Each ABL application includes an environment variable called PROPATH, which is a list of directory paths containing compiled ABL code and other artifacts.

A PAS for OpenEdge multi-session agent starts an ABL Virtual Machine (AVM) either to process a request within a session or to run event procedures. When it does so, the AVM uses the PROPATH setting to find the code and artifacts that it needs to execute.