Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Acessar o serviço Web do procedimento armazenado Oracle


Primeiro, que tipo de serviço da web você está chamando? Estou assumindo SOAP ou REST.

Para serviços da Web REST, UTL_HTTP geralmente é mais do que suficiente, combinado com um pouco de XPath em um procedimento armazenado PL/SQL simples.

Para serviços da Web SOAP, depende de quão sofisticado você precisa (ou deseja) ser. Você certamente pode usar XQuery para criar um documento XML que atenda às especificações do serviço da Web, usar UTL_HTTP para postar o documento e obter a resposta e, em seguida, usar algum XPath para analisar a resposta em PL/SQL. Essa é uma solução relativamente manual e de força bruta, mas se você estiver falando de um punhado de serviços da Web, ela envolve um mínimo de infraestrutura e as chamadas podem ser combinadas rapidamente.

Se você espera que as chamadas evoluam ao longo do tempo ou espera que haja vários procedimentos chamando vários serviços da Web, provavelmente faz sentido investir tempo em algo como UTL_DBWS (isso não é algo que você geralmente obtém trabalhando em algumas horas).