Incoming Messages on the Data Acquisition Layer
OneData inbound messaging includes the ability to connect to the acquisition layer to support decode and exception queue functionality. OneData also supports all create, read, update, delete actions on hierarchies.
To receive incoming messages, you must configure a queue or topic. For more information about inbound message objects, see
Defining Messaging Objects.
Inbound XML Format in Nova Mode
The XML sent to the acquisition layer through a JMS message must adhere to a standard format defined by OneData. You can obtain this format by making a RESTful web service call, which returns an XML structure, known as the inbound envelope.
You can retrieve the URL for an inbound XML envelope and for the inbound XML schema using a RESTful web service call:
To obtain the XSD, append
/InboundEnvelope to the RESTful URL of the data object.
To retrieve XML Schema (XSD) associated with the inbound envelope for a particular data object, append
/InboundXSD to the RESTful URL of the data object.
To override the global setting defined in the onedata.properties file,
onedata.webservice.rest.objectNamePrefixedInXSD, append
/InboundXSD/<object name>? objectNamePrefixedInXSD=<n>, where,
<n> could be 0 or 1.
For information about how to obtain the RESTful URL, see the section on RESTful web services in Developing for webMethods OneData. URL for retrieving Inbound XML Schema
The inbound XML envelope is used to send data as XML through the JMS message. It consists of the header and data.
Header: Contains metadata information that is needed to send the message content. The acquisition layer uses the header to process the request. The following table lists the possible header tags:
onedata_version | OneData Version |
repository | Repository ID. |
client_id | Client ID. |
project_id | Project ID on which the RESTful call is invoked. |
objectid | Object ID of data object where the RESTful call is invoked. |
alternatekey | Alternate key for the data or conceptual object. This can be given as query string through the RESTful call. For more information, see the section about Request Parameters in Developing for webMethods OneData. |
decode | Decode option. This can be given as query string through the RESTful call. For more information, see the section about Request Parameters in Developing for webMethods OneData. |
partialcommit | Indicates whether to enable or disable a partial commit for data modification. Default value is true. However, in a transaction context, OneData ignores this value and only applies the value false. |
skipemptycolumns | Indicates whether to skip empty tags and missing tags in the input XML. Default is true. True: Skips missing tags. If set for conceptual objects, each child object in the conceptual object must have at least one record. False: Sends the insert or update action for all empty and missing tags in the input XML. |
processingmode | Processing mode. This can be provided as a query string through the RESTful call. For more information, see Request Parameters in Developing for webMethods OneData. |
dateformat | Date format for input date column data. Default is YYYY-MM-DD. |
When retrieving the inbound envelope using a RESTful service call, the data portion is replaced with the XML, which is then processed by acquisition layer.
Data: The message content in XML format. The message is generated from the XSD. For conceptual objects, the XML hierarchy reflects the data hierarchy according to XSD generated -++from the inbound XML schema.
For more information about obtaining the XSD for a data object, see Developing for webMethods OneData.