请按照以下指示信息,根据现有的 WSDL 定义创建 Web Service 客户机流。您必须已使用导入的 OrderService.wsdl 文件成功创建 Web Service 流,请参阅创建 Web Service 消息流和消息集。
| 节点类型 | 节点名 |
|---|---|
| MQInput | MQWSInput |
| MQOutput | MQWSOutput |
| Compute | Compute Request,Format Response |
| SOAPAsyncRequest | SOAP Asynchronous Request |
| SOAPAsyncResponse | SOAP Asynchronous Response |
| 节点名 | 终端 | 连接到此节点 |
|---|---|---|
| MQWSInput | Out | Compute Request |
| Compute Request | Out1 | SOAP Asynchronous Request |
| SOAPAsyncResponse | Out | Format Response |
| Format Response | Out1 | MQWSOutput |
下图显示 WebServicesAsyncClientFlow 消息流以及连接在一起的节点的截屏:

| 消息域 | XMLNSC |
| 消息集 | SampleDriverMessages |
DECLARE ns NAMESPACE 'http://www.acmeOrders.com/OrderService'; CREATE COMPUTE MODULE WebServicesAsyncClientFlow_Compute CREATE FUNCTION Main() RETURNS BOOLEAN BEGIN DECLARE inMsg REFERENCE TO InputRoot.XMLNSC.OrderMessage.localElement; SET OutputRoot.SOAP.Body.ns:submitPORequest.partNo = inMsg.PartNumber; DECLARE outMsg REFERENCE TO OutputRoot.SOAP.Body.ns:submitPORequest; SET outMsg.partQuantity = inMsg.Quantity; SET outMsg.personName.firstName = inMsg.FirstName; SET outMsg.personName.lastName = inMsg.LastName; SET outMsg.address.street = inMsg.Street; SET outMsg.address.city = inMsg.City; SET outMsg.address.zipCode = inMsg.ZipCode; RETURN TRUE; END; END MODULE;
CREATE COMPUTE MODULE WebServicesAsyncClientFlow_Format CREATE FUNCTION Main() RETURNS BOOLEAN BEGIN SET OutputRoot.Properties.MessageDomain = 'XMLMSC'; SET OutputRoot.Properties.MessageSet = 'SampleDriverMessages'; SET OutputRoot.Properties.MessageType = 'OrderResponse'; DECLARE inMsg REFERENCE TO InputRoot.SOAP.Body.ns:submitPOResponse; SET OutputRoot.XMLNSC.OrderResponse.PartNo = inMsg.partNo; DECLARE respMsg REFERENCE TO OutputRoot.XMLNSC.OrderResponse; SET respMsg.PartQuantity = inMsg.partQuantity; SET respMsg.AMT = inMsg.orderAmt; SET respMsg.Status = inMsg.orderStatus; RETURN TRUE; END; END MODULE;
现在,您可以创建样本队列,请参阅创建 WebSphere MQ 队列。