Asynchronous Request-Response Oracle Mediator As Client

10-40 Oracle Fusion Middleware Users Guide for Technology Adapters For information about correlation schemas, see Section 10.4.3, Correlation Schemas . ■ Schema Options : This option allows you to specify the schema for the message to be dequeued. – Choose Other Schema : This option allows you to choose your schema for the message to be dequeued. – Choose a Predefined Schema : This option allows you to choose a readymade schema that the adapter provides. When you click Next in the Response page, a Messages page shown in Figure 10–16 is displayed. This page enables you to select the XSD schema file for translation for request as well as response message. For more information about the Messages page, see Section 10.4.1.1, Enqueue Message .

10.4.1.10 Outbound Dequeue Scenario

The outbound dequeue scenario dequeues a single message from a queue using the outbound Oracle MQ Series Adapter by using the Get Message from MQ option in the Operation Type page of the Adapter Configuration Wizard. To enable the outbound dequeue option, you must select the Synchronous option, as shown in Figure 10–29 . Click Next in the Send Message to MQ and Get ReplyReports page, the Response page, as shown in Figure 10–30 , is displayed. You must set the following properties in the Response page: ■ QueueName : This is the name of the MQ Series queue from which the message is dequeued. This property is mandatory. ■ Response Wait Interval : This is the time in milliseconds that the adapter waits if the message is not in the queue. The default value for this property is 0 milliseconds. This property is not mandatory. The permitted value for this property is any integer value =0. Note that the value of this property must be less than that of the timeout for outbound activity. Note: For Oracle MQ Series Adapter in an asynchronous outbound requestreply scenario, properties are differentiated by an Enqueue or Dequeue label in Oracle Enterprise Manager Console. For example, QueueNameEnqueue is used for putting a message and QueueNameDequeue is used for dequeuing the reply. When using Oracle Enterprise Manager Console to edit Oracle MQ Series Adapter properties in this scenario, note the following: ■ If you change the ReplyToQueueNameEnqueue property, you must also change the QueueNameDequeue property to the same value. ■ If you change the MessageIdDequeue property, you must also change the MessageIdEnqueue property to the same value. ■ If you change the CorrelationIdDequeue property, you must also change the CorrelationIdEnqueue property to the same value. Oracle JCA Adapter for MQ Series 10-41 ■ Message Id : This property sets the message filter option based on the messageId. This property is not mandatory. The value provided for this property must be a hexadecimal-encoded value for some messageId. ■ Correlation Id : This property sets the message filter option based on the correlationId. This property is not mandatory. The value provided for this property must be a hexadecimal-encoded value for some correlationId.

10.4.2 Message Properties

The Oracle MQ Series Adapter supports the following message properties: ■ Section 10.4.2.1, Messages Types ■ Section 10.4.2.2, Message Format ■ Section 10.4.2.3, Message Expiry ■ Section 10.4.2.4, Message Priority ■ Section 10.4.2.5, Message Persistence

10.4.2.1 Messages Types

The Oracle MQ Series Adapter supports the following four types of messages: ■ Normal Message A normal message is sent by one program to another program without expecting any response. ■ Request Message A request message is sent by one program to another program requesting a response. ■ Reply Message A reply message is sent by a program in response to a request message. ■ Report Message A report message is sent by a receiving program to a sending program as confirmation of successful or unsuccessful delivery of a message. A report message can be generated for any of the message types, normal message, request message, or reply message. For more information about acknowledgment messages supported by the Oracle MQ Series Adapter, see Section 10.4.5, Report Messages . Note: The ResponseWaitInterval value must be less than the timeout interval for the outbound activity. If the ResponseWaitInterval value exceeds the outbound activity timeout, then the adapter can behave ambiguously. Note: You can filter messages based on the Message Id and Correlation Id property through headers. 10-42 Oracle Fusion Middleware Users Guide for Technology Adapters

10.4.2.2 Message Format

You can specify the format for an outgoing message through the Adapter Configuration Wizard, as shown in Figure 10–8 . The following message formats are supported: ■ No format name Default ■ Command server requestreply message ■ Type 1 command reply message ■ Type 2 command reply message ■ Dead letter header ■ Event message ■ User-defined message in programmable command format ■ Message consisting entirely of characters ■ Trigger message ■ Transmission queue header

10.4.2.3 Message Expiry

You can specify the expiry time for an outgoing message by using the Adapter Configuration Wizard, as shown in Figure 10–8 . The queue manager discards the message after the expiry time of a message has elapsed. If a message has expiration notification set, then a notification is generated when the message is discarded. The notification is sent to the queue specified in the replyToQueue parameter. By default, NEVER is set for the expiry field.

10.4.2.4 Message Priority

You can specify the priority of an outgoing message through the Adapter Configuration Wizard, as shown in Figure 10–8 . A priority can be in the range of 0 low to 9 high. You can also specify the priority of the message to be taken from the default priority attribute, as defined by the destination queue. By default, AS_Q_DEF is set as message priority.

10.4.2.5 Message Persistence

You can specify the persistence of an outgoing message through the Adapter Configuration Wizard, as shown in Figure 10–8 . If message persistence is not set, then a message is lost when the queue manager restarts or there is a system failure. If you set persistence for a message to true, then it means that the message will not be lost even if there is system failure or the queue manager is restarted. You can also specify the persistence of the message to be taken from the default priority attribute, as defined by the destination queue. Persistent messages are written to log files and queue data files. If a queue manager is restarted after a failure, it recovers these persistent messages from these files. Note: You can specify all these message properties at run time through message headers. You can use the assign activity to assign values to these properties.