Search Results dbms_aqjms




Overview

SYS.DBMS_AQJMS is an Oracle Database-supplied PL/SQL package that provides the Java Message Service (JMS) interface over Oracle Advanced Queuing (AQ). In the Oracle E-Business Suite 12.1.1 and 12.2.2 environments, this package is exposed from the SYS schema and surfaces the AQ JMS functionality to EBS application schemas that hold EXECUTE privileges through PUBLIC. Its role is not to implement EBS business logic directly, but to supply the messaging bridge that allows JMS-compliant producers and consumers to enqueue and dequeue messages residing in Oracle AQ queues built on JMS-type payloads. The ETRM metadata records DBMS_AQJMS as a VALID package and package body owned by SYS, with an API classification of OTHER, indicating that it is a foundational database utility rather than an EBS application API. Within the EBS stack, it supports integration points that use AQ-based messaging, including workflow event delivery and inter-application messaging where JMS semantics such as message types, headers, and properties are required.

Key Procedures and Functions

The ETRM documentation for DBMS_AQJMS lists no explicitly documented procedures or functions for the EBS context (0 total). This package is a database-supplied Oracle component, and its callable interface is delivered by Oracle Database rather than by EBS-specific wrappers. Functionally, it provides the JMS operations needed to construct and manage JMS messages, including message creation for the supported JMS payload categories and enqueue/dequeue operations that translate JMS requests into DBMS_AQ calls. Because the ETRM metadata does not enumerate signatures, no parameter lists are described here; consumers should reference the Oracle Database PL/SQL Packages and Types Reference for the authoritative interface. The package is internally self-referential, which is consistent with a utility package whose procedures call one another across the package body.

Tables Accessed

The ETRM metadata does not document direct table access for DBMS_AQJMS through APPS synonyms. Instead, the dependency list identifies the object types and AQ queue tables on which the package depends:

  • AQ$_JMS_MESSAGE, AQ$_JMS_TEXT_MESSAGE, AQ$_JMS_BYTES_MESSAGE, AQ$_JMS_MAP_MESSAGE, and AQ$_JMS_STREAM_MESSAGE — the JMS-typed payload structures that the package reads and writes when constructing and interpreting messages for each JMS message category.
  • AQ$_AGENT — the agent descriptor used to identify JMS producers, consumers, and recipients during enqueue and dequeue.
  • AQ$_JMS_USERPROPARRAY — the array structure holding user-defined JMS message properties attached to a message.
  • ANYDATA and STANDARD — Oracle-supplied types enabling generic payload handling and base PL/SQL operations.
  • DBMS_AQ — the core Advanced Queuing API that DBMS_AQJMS invokes to carry out the underlying enqueue and dequeue work.

Actual message storage resides in the AQ queue tables created by DBMS_AQADM, not in EBS application tables.

Usage Notes

DBMS_AQJMS is typically invoked indirectly. In EBS 12.1.1 and 12.2.2, it is referenced by the PUBLIC synonym DBMS_AQJMS and by SYS.DBMS_AQADM_SYS, meaning that AQ administrative and messaging operations performed through the EBS stack can traverse this package. Custom integrations that publish or consume JMS-format messages from Oracle AQ queues against an EBS database will call it directly from PL/SQL, Java (JDBC/JMS via the Oracle JDBC driver), or an external JMS client. It is not surfaced through a standard EBS form or concurrent program; EBS developers encounter it when building or troubleshooting AQ-based interfaces, including workflow mailer and event-system messaging paths. Because the package runs as SYS-defined code, grants are managed at the database level, and EBS application schemas rely on the PUBLIC grant. When diagnosing AQ failures in EBS, verifying the VALID status of DBMS_AQJMS and its dependencies is a standard first step, since an invalid state will block any dependent AQ or JMS messaging operation across the instance.