Uma mensagem de callout síncrona é colocada na fila de suspensão do tpipe e aguarda até ser retirada por um aplicativo externo ou serviço e o tpipe permanece em um estado de espera até que a mensagem de resposta do aplicativo externo retorne antes que a próxima mensagem de callout possa ser entregue.
Um fluxo de mensagens típico é o seguinte:
Figura 1. Fluxo de Mensagem de Callout Síncrona
- Um aplicativo Java™ EE
no WebSphere Application Server inicia e o WebSphere Application Server se conecta ao IMS Connect através do IMS TM
Resource Adapter. O IMS TM
Resource Adapter, por sua vez, emite um pedido RESUME TPIPE para o tpipe e aguarda o pedido de callout do IMS Connect.
- Um cliente inicial, como um terminal ou um cliente IMS Connect
ou OTMA, inicia um aplicativo IMS.
- O aplicativo IMS emite uma chamada IMS DL/I ICAL e especifica o descritor de destino do OTMA que contém o nome do tpipe de destino no qual a mensagem de pedido de callout será enfileirada. Quando o pedido é feito na fila de suspensão de tpipe, um token de correlação é anexado ao pedido.
- Se um pedido de callout não estiver disponível no momento do pedido, o IMS TM
Resource Adapter será bloqueado e o aplicativo Java aguardará a próxima mensagem de callout disponível. No caso de um aplicativo EJB no qual o próprio aplicativo manipula a consulta do
IMS Connect para mensagens de callout, o IMS TM
Resource Adapter aguarda até que o tempo limite ocorra. Assim que o pedido de callout estiver disponível no tpipe, o IMS Connect entregará a mensagem de callout ao IMS TM
Resource Adapter.
- O IMS TM
Resource Adapter recebe a mensagem de pedido de callout e envia o pedido de callout para o aplicativo Java. O aplicativo processa o pedido de callout.
- O aplicativo Java envia a resposta, com o token de correlação anexado, para o IMS TM
Resource Adapter.
- O IMS TM
Resource Adapter encaminha a resposta para o IMS Connect.
- Com base no token de correlação, a resposta será correlacionada novamente para o pedido inicial do IMS.