Esse artigo faz parte da revista Java Magazine edição 50. Clique aqui para ler todos os artigos desta edição Clique aqui para ler esse artigo em PDF. Integração Simples com XML-RPC Aumente a Interoperabilidade com uma alternativa leve O mundo de TI vem demandando ada vez mais a integração e aplicações, muitas delas em rodução há anos, ou mesmo décadas, e esenvolvidas com diferentes linguagens e ecnologias. Surge então o desafio de fazer om que tais sistemas se comuniquem de orma transparente. Há duas maneiras opulares de implementar a comunicação ntre aplicações heterogêneas: XML-RPC o SOAP. Ambas fazem a codificação em ML e o transporte via HTTP e possuem ropósitos muito parecidos. A maior diferença entre as duas é que o SOAP favorece um modelo de comunicação assíncrono e centrado em documentos. Já o XML-RPC (RPC=Remote Procedure Call) mantém o paradigma de chamada de procedimentos – com invocações síncronas, parâmetros, valores de retorno, exceções e outras características familiares à quase totalidade das linguagens de programação. Isso facilita o aprendizado da tecnologia e o seu uso transparente. Há ainda outras diferenças entre esses protocolos, que resumimos na Tabela 1. Tabela 1. Comparação entre SOAP e XML-RPC Este artigo demonstra uma solução de comunicação entre aplicativos heterogêneos, usando a tecnologia XML-RPC. Conceitos e aspectos do XML-RPC O XML-RPC, assim como o Java RMI (Remote Method Invocation), faz parte da família de protocolos de “Chamada de Procedimentos Remotos” (RPCs), que surgiu nos anos 80. A RPC permite que um programa chame um procedimento/ método/função que reside em outro sistema – da mesma maneira que o chamaria se fosse parte do mesmo software. Esse mecanismo torna transparente para o programador a invocação de procedimentos fora de seu programa. Além disso, possibilita a execução de aplicações de forma distribuída, criando-se serviços que são processados e invocados em diferentes aplicativos, por exemplo, numa intranet ou internet. As únicas informações necessárias para a invocação são a interface e a localização (endereço IP e porta) da função a invocar. De maneira geral, o formato de uma chamada XML-RPC é o mesmo de uma requisição HTTP. Além disso, o corpo desta requisição é estruturado em XML, assim como o retorno da execução. A Figura 1 ilustra o mecanismo de troca de dados do XML-RPC, integrando um aplicativo em Java a outro em C++. Os parâmetros usados podem ser numéricos, strings etc., e também estruturas de dados complexas, como arrays e structs.
Figura 1. Visão geral do protocolo XML-RPC A Figura 2 apresenta um exemplo de chamada HTTP usando XML-RPC. Note que o conteúdo em XML possui alguns itens definidos. O elemento
Figura 2. Formato da mensagem XML-RPC no momento da chamada de uma função remota A Figura 3 ilustra um exemplo de mensagem de retorno para uma invocação. O corpo da resposta, como se vê, é também estruturado em XML. Vamos aos detalhes. O ![]()



Artigo Java Magazine 50 - Integração Simples com XML-RPC
Artigo publicado pela Java Magazine 50.
Quer ler esse conteúdo completo?
Tenha acesso completo
Confira outros conteúdos:
Introdução ao JDBC
Novidades do Java
Teste unitário com JUnit
Por
Eduardo
Em 2008
<Perguntas frequentes>
Carreira
Metodologia
Assinatura e Pagamentos
Cadastro
