You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -17,120 +17,161 @@ The IBM MQ connector sends and retrieves messages stored in an IBM MQ server on
17
17
18
18
The IBM MQ connector includes these actions but provides no triggers:
19
19
20
-
- Browse a single message without deleting the message from the IBM MQ server
21
-
- Browse a batch of messages without deleting the messages from the IBM MQ server
22
-
- Receive a single message and delete the message from the IBM MQ server
23
-
- Receive a batch of messages and delete the messages from the IBM MQ server
24
-
- Send a single message to the IBM MQ server
20
+
- Browse a single message without deleting the message from the IBM MQ server.
21
+
- Browse a batch of messages without deleting the messages from the IBM MQ server.
22
+
- Receive a single message and delete the message from the IBM MQ server.
23
+
- Receive a batch of messages and delete the messages from the IBM MQ server.
24
+
- Send a single message to the IBM MQ server.
25
+
26
+
Here are the officially supported IBM WebSphere MQ versions:
27
+
28
+
* MQ 7.5
29
+
* MQ 8.0
30
+
* MQ 9.0
25
31
26
32
## Prerequisites
27
33
28
-
* If you're using an on-premises MQ server, [install the on-premises data gateway](../logic-apps/logic-apps-gateway-install.md) on a server within your network. The server where the on-premises data gateway is installed must also have .NET Framework 4.6 installed for the MQ connector to work. You must also create a resource in Azure for the on-premises data gateway. For more information, see [Set up the data gateway connection](../logic-apps/logic-apps-gateway-connection.md).
34
+
* If you're using an on-premises MQ server, [install the on-premises data gateway](../logic-apps/logic-apps-gateway-install.md) on a server within your network. The server where the on-premises data gateway is installed must also have .NET Framework 4.6 installed for the MQ connector to work.
29
35
30
-
However, if your MQ server is publicly available or available within Azure, you don't have to use the data gateway.
36
+
After you finish installing the gateway, you must also create a resource in Azure for the on-premises data gateway. For more information, see [Set up the data gateway connection](../logic-apps/logic-apps-gateway-connection.md).
31
37
32
-
* Officially supported IBM WebSphere MQ versions:
38
+
If your MQ server is publicly available or available within Azure, you don't have to use the data gateway.
33
39
34
-
* MQ 7.5
35
-
* MQ 8.0
36
-
* MQ 9.0
40
+
* The logic app where you want to add the MQ action. This logic app must use the same location as your on-premises data gateway connection and must already have a trigger that starts your workflow.
41
+
42
+
The MQ connector doesn't have any triggers, so you must add a trigger to your logic app first. For example, you can use the Recurrence trigger. If you're new to logic apps, try this [quickstart to create your first logic app](../logic-apps/quickstart-create-first-logic-app-workflow.md).
43
+
44
+
<aname="create-connection"></a>
45
+
46
+
## Create MQ connection
47
+
48
+
If you don't already have an MQ connection when you add an MQ action, you're prompted to create the connection, for example:
1. If you're connecting to an on-premises MQ server, select **Connect via on-premises data gateway**.
37
53
38
-
* The logic app where you want to add the MQ action. This logic app must use the same location as your on-premises data gateway connection and must already have a trigger that starts your workflow.
54
+
1. Provide the connection information for your MQ server.
39
55
40
-
The MQ connector doesn't have any triggers, so you must add a trigger to your logic app first. For example, you can use the Recurrence trigger. If you're new to logic apps, try this [quickstart to create your first logic app](../logic-apps/quickstart-create-first-logic-app-workflow.md).
56
+
*For **Server**, you can enter the MQ server name, or enter the IP address followed by a colon and the port number.
41
57
42
-
## Browse a single message
58
+
* To use Secure Sockets Layer (SSL), select **Enable SSL?**.
43
59
44
-
1. In your logic app, under the trigger or another action, choose **New step**.
60
+
The MQ connector supports only server authentication, not client authentication. This limitation means that the connector doesn't send certificates and only validates the server certificate. For more information, see [Connection and authentication problems](#connection-problems).
45
61
46
-
1. In the search box, type "mq", and select this action: **Browse message**
62
+
1. In the **gateway** section, follow these steps:
When your logic app tries connecting to your on-premises MQ server, you might get this error:
65
73
66
-
1. Set up the action's properties:
74
+
`"MQ: Could not Connect the Queue Manager 'EBNGWT': The Server was expecting an SSL connection."`
67
75
68
-
***Queue**: Specify a queue that's different from the connection.
76
+
* If the certificate from the MQ server isn't from a trusted certificate authority, install a self-signed certificate in the **Trusted Root Certification Authorities** store on the local computer where the on-premises data gateway service is running.
69
77
70
-
***MessageId**, **CorrelationId**, **GroupId**, and other properties: Browse for a message based on the different MQ message properties
78
+
The Windows OS has two certificate stores, **Certificates - Current User** and **Certificates - Local Computer**. Make sure that you add the certificate to the **Certificates - Current User** store for the user account that's running the on-premises data gateway service.
71
79
72
-
***IncludeInfo**: Specify **True** to include additional message information in the output. Or, specify **False** to not include additional message information in the output.
80
+
To install the certificate, you can use Windows Certification Manager (certmgr.msc). On the local computer, from the start menu, find and select **Manage user certificates**.
73
81
74
-
***Timeout**: Enter a value to determine how long to wait for a message to arrive in an empty queue. If nothing is entered, the first message in the queue is retrieved, and there is no time spent waiting for a message to appear.
82
+
* The MQ server requires that you define the cipher specification to use with SSL. However, SsLStream in .NET doesn't permit you to specify the order for cipher specifications. To work around this limitation, you can change your MQ server configuration to match the first cipher specification in the suite that the connector sends in the SSL negotiation.
When you try the connection, the MQ server logs an event message that indicates the connection failed because the other end used the incorrect cipher specification. The event message contains the cipher specification that appears first in the list. Update the cipher specification in the channel configuration to match the cipher specification in the event message.
77
85
78
-
1.**Save** your changes, and then **Run** your logic app.
86
+
## Browse single message
79
87
80
-

88
+
1. In your logic app, under the trigger or another action, select **New step**.
81
89
82
-
After the run finishes, the steps from the run are shown, and you can review the output.
90
+
1. In the search box, enter `mq`, and select the **Browse message** action.
83
91
84
-
1. To review the details for each step, choose the green checkmark. To review more information about the output data, choose **Show raw outputs**.
1. If you haven't already created an MQ connection, you're prompted to [create that connection](#create-connection).
95
+
96
+
1. After you create the connection, set up the **Browse message** action's properties:
97
+
98
+
| Property | Description |
99
+
|----------|-------------|
100
+
|**Queue**| If different from the queue specified in the connection, specify that queue. |
101
+
|**MessageId**, **CorrelationId**, **GroupId**, and other properties | Browse for a message that's based on the different MQ message properties |
102
+
|**IncludeInfo**| To include additional message information in the output, select **true**. To omit additional message information in the output, select **false**. |
103
+
|**Timeout**| Enter a value to determine how long to wait for a message to arrive in an empty queue. If nothing is entered, the first message in the queue is retrieved, and there is no time spent waiting for a message to appear. |
104
+
|||
105
+
106
+
For example:
107
+
108
+

109
+
110
+
1. When you're done, on the designer toolbar, select **Save**. To test your app, select **Run**.
111
+
112
+
After the run finishes, the designer shows the workflow steps and their status so that you can review the output.
113
+
114
+
1. To view the details about each step, click the step's title bar. To review more information about a step's output, select **Show raw outputs**.

120
+

91
121
92
-
1. If you set **IncludeInfo** to true, the following output is displayed:
122
+
1. If you set **IncludeInfo** to **true**, additional output is shown:
93
123
94
-

124
+

95
125
96
126
## Browse multiple messages
97
127
98
-
The **Browse messages** action includes a **BatchSize** option to indicate how many messages should be returned from the queue. If **BatchSize** has no entry, all messages are returned. The returned output is an array of messages.
128
+
The **Browse messages** action includes a **BatchSize** option to indicate how many messages to return from the queue. If **BatchSize** has no value, all messages are returned. The returned output is an array of messages.
129
+
130
+
1. Follow the previous steps, but add the **Browse messages** action instead.
131
+
132
+
1. If you haven't already created an MQ connection, you're prompted to [create that connection](#create-connection). Otherwise, by default, the first previously configured connection is used. To create a new connection, select **Change connection**. Or, select a different connection.
133
+
134
+
1. Provide the information for the action.
99
135
100
-
1.When you add the **Browse messages** action, the first previously configured connection is selected by default. To create a new connection, choose **Change connection**. Or, select a different connection.
136
+
1.Save and run the logic app.
101
137
102
-
1.After the logic app run finishes, here is some sample output from the **Browse messages** action:
138
+
After the logic app finishes running, here is some sample output from the **Browse messages** action:
The **Receive message** action has the same inputs and outputs as the **Browse message** action. When using**Receive message**, the message is deleted from the queue.
144
+
The **Receive message** action has the same inputs and outputs as the **Browse message** action. When you use**Receive message**, the message is deleted from the queue.
109
145
110
146
## Receive multiple messages
111
147
112
-
The **Receive messages** action has the same inputs and outputs as the **Browse messages** action. When using**Receive messages**, the messages are deleted from the queue.
148
+
The **Receive messages** action has the same inputs and outputs as the **Browse messages** action. When you use**Receive messages**, the messages are deleted from the queue.
113
149
114
-
If there are no messages in the queue when doing a browse or a receive, the step fails with this output:
115
-
116
-

150
+
> [!NOTE]
151
+
> When running a browse or a receive action on a queue that doesn't have any messages,
152
+
> the action fails with this output:
153
+
>
154
+
> 
117
155
118
156
## Send message
119
157
120
-
When you add the **Send messages** action, the first previously configured connection is selected by default. To create a new connection, choose **Change connection**. Or, select a different connection.
158
+
1. Follow the previous steps, but add the **Send message** action instead.
159
+
160
+
1. If you haven't already created an MQ connection, you're prompted to [create that connection](#create-connection). Otherwise, by default, the first previously configured connection is used. To create a new connection, select **Change connection**. Or, select a different connection.
161
+
162
+
1. Provide the information for the action. For **MessageType**, select a valid message type: **Datagram**, **Reply**, or **Request**
121
163
122
-
1. Select a valid message type: **Datagram**, **Reply**, or **Request**
164
+

0 commit comments