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…
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á
Não ha comentários
Leave a reply

