0

Gerando XML com DOM e PHP

imagesGerando XML com DOM e PHP

O modelo DOM (Document Object Model)  representa  um documento XML em uma estrutura em árvore carregada na memória. Portanto as definições das interfaces DOM descrevem os meios de acessarmos está estrutura em árvore. O DOM (Document Object Model) foi definido pelo W3C como um conjunto de interfaces que facilitam no acesso e manipulação de documentos XML. Para gerarmos uma estrutura que obedeça o padrão DOM para documentos XML utilizando o php usando a classe DOMDocument(), a partir desta classe podemos criar nossos elementos xml, inserir atributos, valores e assim formatar documentos.

Segue um exemplo básico que criei utilizando DOMDocument() do php para gerar um arquivo xml. Segue o código com os devidos comentários:

 Estrutura Gerada pelo Script:

 

0

Web Services Description Language, WSDL

managed-services-iconWeb Services Description Language, WSDL

Esta postagem é uma breve definição de um documento WSDL, a mesma foi retirada do meu projeto de conclusão do bacharelado. Segue a definição usada em meu projeto para descrever os documentos WSDL.

O Web Services Description Language (WSDL) é uma linguagem baseada em XML que permite com que os Web Services disponibilizem acesso as suas informações de uma forma padronizada e organizada através de interfaces. Por sua vez as interfaces contêm as informações sobre todas as funcionalidades de um serviço, tais informações são todos os tipos de dados que fazem com o cliente possa utilizar um serviço e todas as suas funções. A principal função do WSDL é disponibilizar para o cliente um serviço e suas funções disponíveis independentemente de plataforma ou linguagem, fazendo assim com que uma aplicação Java se comunique com uma aplicação Perl ou com qualquer outra linguagem.

Os documentos em WSDL estabelecem contratos de serviços para web services baseados em SOAP, onde o mesmo se torna acessível através de um par formado pelo endpoint do serviço que define a URL do mesmo, e um namespace de serviço que define a URI do mesmo.

Elementos de um WSDL

O WSDL faz o uso de XML para descrever Web Services, especificando seis elementos principais:

  • <definitions>: É o elemento raiz de um documento WSDL.
  • <types>: Descreve todos os tipos de dados usados entre o cliente e o servidor
  • <message>: Descreve se a mensagem é uma requisição (request) ou uma resposta (response)
  • <portType>: Forma uma operação em um único sentido ou to tipo “request-response”.
  • <binding>: Definição de detalhes específicos de como o serviço será implementado.
  • <service>: Definição do endereço para invocar um serviço específico.

Além dos seis principais tipos o WSDL descreve mais dois elementos como utilitários:

  • <documentation>: É um elemento opcional que serve como um local para criar uma documentação compreensível ao homem, podendo aparecer dentro de qualquer elemento do WSDL.
  • <import>: Utilizado para importar outros documentos WSLD ou XML Schema.

Estrutura de um Documento WSDL

A estrutura de especificação do WSDL nada mais é do que um documento XML com um elemento raiz <definitions> que define um conjunto de serviços web. Essa estrutura segue a sintaxe a seguir:

Artigo_clip_image002

Não poderia deixar de citar o nome dos meus amigos que contribuíram para o crescimento de nossos estudos.

Grupo do Projeto Final: 
Fabiano Costa
Paulo Ricardo
Renan Santos

0

Convertendo Objetos em XML com JAXB

Java (2)
O JAXB é um framework que tem como função definir o mapeamento e transformar os dados em um objeto Java para XML e vice-versa, fazendo uso dos recursos do JAXB podemos transformar uma árvore de objetos Java em textos XML.

Para que possamos transformar objetos em xml usamos a anotação @XMLRootElement.

Exemplo:

A partir da anotação inserida na classe VeiculoVo, devemos criar o um contexto do JAXB para que  a anotação possa ser processada. O processo de transformar o objeto Java em XML é feito através da interface Marshaller.

O processo inverso pode ser feito através de um contexto JAXB com um objeto da interface Unmarshaller.