Use as instruções a seguir para criar o fluxo do cliente de serviço da Web a partir de uma definição de WSDL existente. Você deve ter criado com êxito o fluxo de serviços da Web usando o arquivo OrderService.wsdl importado; consulte Criando o Fluxo de Mensagens do Serviço da Web e o Conjunto de Mensagens.
Tipo de Nó | Nome de Nó |
---|---|
MQInput | MQWSInput |
MQOutput | MQWSOutput |
Compute | Pedido de Processamento, Formatar Resposta |
SOAPAsyncRequest | Pedido Assíncrono SOAP |
SOAPAsyncResponse | Resposta Assíncrona SOAP |
Nome de Nó | Terminal | Conectar a esse Nó |
---|---|---|
MQWSInput | Out | Pedido de Processamento |
Pedido de Processamento | Out1 | Pedido Assíncrono SOAP |
SOAPAsyncResponse | Out | Formatar Resposta |
Formatar Resposta | Out1 | MQWSOutput |
O diagrama a seguir mostra uma captura de tela do fluxo de mensagens WebServicesAsyncClientFlow com os nós conectados juntos:
Domínio de mensagem | XMLNSC |
Conjunto de Mensagens | 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;
Agora, é possível criar as filas para a amostra, consulte Criando as
Filas do WebSphere MQ.