PEAR, Webservices e DIME

Em primeiro lugar, desculpem a demora. foram longos meses sem um novo artigo. Pretendo reparar o acontecido com ótimo conteúdo para os leitores. Vamos falar neste post sobre Webservices com anexos… DIME pra ser mais específico. Junto com o assunto, introduzo o P.E.A.R. (PHP Extension and Application Repository), repositório de classes que auxiliam, e salvam a vida a maioria das vezes e que é mantido pela comunidade organizadamente.

Problema:
Estava eu, com minhas atribuições de sempre, quando me solicitam um cliente de webservice para uma determinada necessidade. ‘Ótimo’ - pensei - ‘Uso as classes SoapClient do PHP5 e tudo estará resolvido’; aí vem a bomba. Um dos requisitos do serviço é um anexo, de um tipo específico chamado de DIME (Direct Internet Message Encapsulation).

Solução:
1º - Baixar os pacotes da PEAR
- SOAP - Conjunto de classes para consumir e servir webservices
- Net_URL - Classes para tratar protocolos de rede
- Net_DIME - Específica para encapsular uma mensagem DIME
- PEAR - Base para as outras, incluindo uma classe para tratamento de erros.
2º - Criar um diretório ‘Net’ e copiar o conteúdo de Net_URL e Net_DIME para ele. Explicações depois…
3º - Codificar…

Código PHP

Bom, dado o código acima, vamos aos fatos: pra chegar neste código não demorei muito, porém levei dias para fazer funcionar o maldito webservice. ‘Porquê’ você deve estar se perguntando… porque a documentação do servidor do webservice estava errada… eu me matei alguns dias para alterar 2 coisas, as quais descobri fuçando no serviço, que fizeram finalmente meu sistema consumir o webservice. Mas isso é história pra outro post

Desabafos a parte, explicando melhor algumas coisas: O PEAR trabalha com uma organização de pacotes / Namespaces; O Namespace de Net_URL e Net_DIME é ‘Net’… para manter a organização dos pacotes, dando fácil acesso para buscas e manutenção.

Este artigo infelizmente não foi tão bem produzido, mas nos próximos posts, e espero que não seja longa a espera por novos, abordarei melhor vários assuntos correlatos.

Até lá

Sem comentários

No comments yet

Leave a reply