Try OpenEdge Now
skip to main content
Web Services
Creating ABL Clients to Consume OpenEdge SOAP Web Services : Handling SOAP Message Headers in ABL : Managing memory for SOAP headers : SOAP header object model and DOM relationships
 
SOAP header object model and DOM relationships
The manner in which a SOAP header object encapsulates the XML for a SOAP header is similar to how the ABL Document Object Model (DOM) allows an x-document object to encapsulate the XML of a general XML document. The manner in which a SOAP header-entryref object references a SOAP header entry is similar to how the ABL DOM allows an x-noderef object to reference the individual elements and attributes of a general XML document. Similar dependencies exist for managing the memory for objects in each reference model.
A SOAP header entry (XML sub-tree) must be associated with the SOAP header-entryref object handle. None of the object's methods (see Table 34) can be called successfully unless there is an underlying SOAP header entry.
SOAP header objects can be created in the ABL application in two ways:
*Implicitly by OpenEdge for the header of an incoming SOAP response message
*Explicitly by the application using a variation of the CREATE statement
No matter how the application creates these objects, the application is responsible for explicitly deleting these and any other objects that it creates during a session, including the SOAP header-entryref objects used to reference the header entries in a SOAP header object and any X-document and X-noderef objects used to parse and build the XML structures that occupy memory for the underlying XML.