Web applications
- Last Updated: July 21, 2025
- 3 minute read
- OpenEdge
- Version 12.2
- Documentation
The web applications deployed to a PAS for OpenEdge instance are generated as Web Application Archive (WAR) files. When deployed, WAR files are expanded in the Java servlet container of the server in the /webapps directory of the PAS for OpenEdge instance.
In PAS for OpenEdge, the /webapps folder typically includes:
- A PAS for OpenEdge ROOT application that replaces the default Tomcat
ROOT application. Note: The server must have an application named ROOT installed.
- (Optional) administrative applications such as manager.war and oemanager.war. For more information, see Manager applications.
- The ABL web applications, based off of oeabl.war, that the application server runs in response to a client request.
The oeabl.war application provides transports for accessing ABL and web services via HTTP. Copies of the oeabl.war application can be deployed from the openedge-installation-dir/servers/pasoe/extras (also known as $CATALINA_HOME/extras) directory.
As an example of a web application in the /webapps directory, the OpenEdge ABL web application (oeabl.war) is structured as follows:
- /apsv — A URI path reserved for OpenEdge client connections (can be disabled).
- /soap — A URI path reserved for OpenEdge SOAP client connections (can be disabled).
- /rest — A URI path reserved for OpenEdge REST clients (can be disabled).
- /web — A URI path reserved for OpenEdge WebSpeed and new REST clients (can be disabled).
- static — A directory that contains static files, including images, style sheets, and HTML pages.
- META-INF — A required directory that contains metadata and context.xml definitions specific to the web application. OpenEdge uses a tailored context.xml file for the web application, and can be tailored by the deployment site to meet security requirements.
- WEB-INF — A required directory
that holds the configuration file of the web application (web.xml), Spring Security configuration files, and other application
private files.
- adapters — OpenEdge directory tree that hold REST, SOAP, and WEB deployment files.
- lib — Required directory that holds any Java libraries specific to the web application.
- classes — Required directory that holds any Java classes or data files specific to the web application.
- openedge — Directory provided intended for ABL developer to distribute their r-code files that apply specifically to the web application.
- (Optional) The .r and .p files specific to the application in the instance-name/webapps/webapp-name/WEB-INF/openedge directory. The directory structure should be capable of being configured read-only in a secure installation
- Static pages used by the web application. They should be located relative to the web application's URI from the root URI (/) , but not from one of the reserved OpenEdge URIs.
- Configuration files for the web application, including the application-specific web.xml files and oeablSecurity*.xml files in the webapps/webappname/WEB-INF directory.
- A default REST configuration properties file: WEB-INF/adapters/rest/runtime.props.Note: REST properties are not contained in the instance-name/conf/openedge.properties file.
- REST .paar files that may be incrementally deployed into an existing OpenEdge web application.
- SOAP .wsm files that may be incrementally deployed into an existing OpenEdge web application.
- A fragment of the openedge.properties file that contains the defaults for the ABL application and its associated web applications, transports, session manager, and multi-session agents. The fragment is appended to the instance-name/conf/openedge.properties file at installation time by a user-written tailoring script.
- (Optional) User-written installation tailoring script that customizes web applications and openedge.properties files.
- (Optional) User-written startup environment script (myapp_setenv.[sh|bat]) that sets OS process environment variables used by the ABL application code.
Additional information about ABL web applications in PAS for OpenEdge:
-
- An ABL application contains at least one ABL web application derived from the oeabl.war application.
- An ABL web application exposes ABL application logic using HTTP, so it can be called with a URI and with HTTP methods.
- An ABL web application has a URI that is relative to the instance, for example, http://localhost:8810/webapp-name. The ROOT OpenEdge ABL web application (ROOT application) has a special relative URI to the instance, which is accessed through the instance URL, for example: http://localhost:8810/. Therefore, if you removed the ROOT application from the /webapps folder, then the instance URL would not be accessible.
- An ABL web application can act as an authentication boundary, for example, using login web pages (JSP) or inheriting ABL application authentication.
- An ABL web application contains one or more ABL services, including a /static service.
- An ABL web application has a WEB-INF/openedge directory which is added to PROPATH when the web application is deployed. This directory contains ABL code from individual ABL services.
- Other web applications can also be deployed to an instance that are related to but not part of an ABL application, such as a monitoring application like manager.war. For more information, see Manager applications.