Search Results server_protocol
Overview
The OWAPUB.OWA package body is a core Oracle-supplied PL/SQL package that implements the Oracle Web Agent (OWA) toolkit within Oracle E-Business Suite (EBS) 12.1.1 and 12.2.2. It provides the foundational runtime layer used by the PL/SQL Gateway (mod_plsql / Apache PL/SQL cartridge) and by the Oracle HTTP Server to expose database-stored procedures as callable web endpoints. The package is owned by SYS and is classified under the ETRM "OTHER" API classification, indicating it is an internal infrastructure component rather than a business-facing API. Its primary role is to initialize and manage the Common Gateway Interface (CGI) environment variables that describe an inbound HTTP request, and to provide controlled access to the output buffer generated by a user's PL/SQL procedure. In EBS, this machinery underpins the delivery of web pages from packages such as OWA, HTP, HTF, and the various FND_* web utilities that render self-service and administrative UIs.
Key Procedures and Functions
The ETRM metadata documents eleven callable components. The INITIALIZE procedure performs one-time setup of the package's global state, ensuring CGI variable arrays and output buffers are ready before a request is processed.
- INIT_CGI_ENV — Overloaded procedure that populates the CGI environment variable arrays. One form derives variable names from a fixed, ordered list (
SERVER_SOFTWARE,SERVER_NAME,GATEWAY_INTERFACE,REMOTE_HOST,REMOTE_ADDR,AUTH_TYPE,REMOTE_USER,REMOTE_IDENT,HTTP_ACCEPT,HTTP_USER_AGENT,SERVER_PROTOCOL,SERVER_PORT,SCRIPT_NAME,PATH_INFO,PATH_TRANSLATED,HTTP_REFERER,HTTP_COOKIE) and maps supplied values positionally, storing only non-null entries. The second overload accepts explicit name/value arrays. This is the mechanism through whichhttp_user_agentand related request headers become visible to PL/SQL code. - GET_LINE — Function that retrieves a single line from the user's generated output buffer, returning the line and an out row index.
- GET_PAGE — Procedure that returns the accumulated page buffer into an
HTP.HTBUF_ARRarray. - GET_PAGE_CHARSET_CONVERT — Variant of page retrieval that converts character set encoding before returning the buffer.
- GET_PAGE_RAW — Returns the page buffer without charset conversion.
- RESET_GET_PAGE — Resets the page retrieval state so subsequent
GET_PAGEcalls begin from the start. - SET_USER_ID — Sets the user identity used in the gateway context.
- SET_PASSWORD — Sets the associated credential for the gateway session.
- SET_TRANSFER_MODE — Configures whether the response buffer is transferred in raw or converted form.
Tables Accessed
The ETRM metadata records no direct table references via APPS synonyms for this package. The OWA package body operates entirely on in-memory PL/SQL structures — CGI variable arrays (cgi_var_name, cgi_var_val, num_cgi_vars) and the output buffer — rather than issuing SQL against application tables. This is consistent with its role as a request/response processing layer sitting beneath business logic. Persistent data access is delegated to higher-level packages that call OWA routines.
Usage Notes
OWAPUB.OWA is generally not invoked directly by application developers. It is executed implicitly by the Oracle HTTP Server PL/SQL gateway when a browser request targets a stored procedure through a DAD (Database Access Descriptor), and by infrastructure packages such as HTP that wrap its buffer-management routines. In EBS 12.1.1 (Apache/mod_plsql) and 12.2.2 (Fusion Middleware WebLogic with the PL/SQL cartridge), the package initializes the CGI environment — including HTTP_USER_AGENT — so that the invoked procedure can inspect request headers, then collects the HTML output through GET_PAGE or GET_PAGE_RAW. The metadata notes it is referenced by two other packages, confirming its role as a shared dependency. Custom code should rely on the public wrappers HTP, HTF, and OWA_UTIL rather than calling OWA members directly, since the package is owned by SYS and subject to change between EBS releases.
-
PACKAGE BODY: OWAPUB.OWA
12.1.1
-
PACKAGE BODY: SYS.OWA
12.1.1
-
PACKAGE BODY: SYS.OWA
12.2.2