Escolar Documentos
Profissional Documentos
Cultura Documentos
Soap PDF
Soap PDF
Neste artigo vamos fazer uma análise geral da base da tecnologia SOAP. Conheceremos as
suas características principais e formas de envio das mensagens, assim como a sua relação
com protocolos de redes, especificamente o HTTP.
Um dos principais motivos de implementarmos o cabeçalho Temos na Figura 5 exemplos de valores para o atributo
desta meneira é por quê administradores de sistemas podem encodingStyle.
configurar seus firewalls para filtrar as mensagens baseados nas
informações dos cabeçalhos, sem consultar o XML. “http://www.xml.it/schemas”
“http://www.xml.it/schemas http://schemas.eu.com.br”
“”
A Figura 3 ilustra a formatação de um envelope SOAP.
Figura 5: Valores válidos para o atributo encodingStyle.
Ele está presente logo após o cabeçalho da mensagem, se este byte int unsignedByte
existir. Caso não exsita, ele deve aparecer imediatamente após a double long unsignedInt
tag de abertura do envelope.
datatype Qname unsignedLong
O conteúdo do corpo da mensagem SOAP depende se ela é uma decimal short unsignedShort
requisição ou uma resposta. Caso seja requisição, ele contém
enumeration string
informaçõesssobre a chamada do método, se é uma resposta
contém dados do resultado da chamada ao método. Figura 8: Tipos básicos de dados suportados pelo SOAP.
Nota
A especificação oficial do SOAP usa o termo fault (falha) ao invés de
exception (exceção). Foi dada preferência ao termo exceção por estar
em sintonia com a terminologia usada na maioria das lingüagens de
programação.
As exceções SOAP podem ocorrer em vários estágios do Nota
processamento de requisições de um web service. As aplicações SOAP intermediárias não são as mesmas que os
intermediários do HTTP . Ou seja, não podemos esperar que o
Se o erro ocorre no envio HTTP, antes da chegada no web cabeçalho do HTTP Connection inspecione ou processe o corpo SOAP
service, a camada do HTTP responsável pelo erro deve utilizar a carregado no HTTP Request
convenção do prórpio HTTP para notificá-lo.
HTTP Post
Caso o erro ocorra na prórpia execução do aplicativo SOAP, O comando Post do HTTP será o responsável pelo envio da
podemos ver na Figura 9 o código gerado, o erro e a sua mensagem SOAP. Ele contém uma URI requisitora que
descrição. especifica um destino ID. O sevidor é responsável por mapear a
URI para a implementação do Web Service e ativar o código
Valor Nome Significado intrínseco à plataforma onde o serviço irá rodar.
Version A chamada usou uma versão SOAP que ela não
100 Ainda no cabeçalho do HTTP temos um campo com o nome do
Mismatch suporta.
método chamado.
Um elemento XML foi recebido com o atributo
Must
200 mustUnderstand com valor “1” , mas não foi
Understand Seguido pelo cabeçalho, temos a própria mensagem SOAP, que
entendido pelo receptor.
é separada por uma linha em branco.
O receptor não conseguiu processar a
Invalid
300 requisição por que ela está mal-formada ou não A Figura 11 temos um modelo de uma estrutura SOAP contida
Request
é suportada. em uma requisição HTTP Post.
Application O recebimento da aplicação falhou quando o
400
Faulted processamento foi requisitado.
Figura 9: Exceções geradas pelo SOAP.
Nota
O erro 400 (Application Failed) é apresentado no elemento detail.
Figura 11: Estrutura do HTTP Post com uma mensagem SOAP.
Na Figura 10 vemos uma resposta SOAP contendo uma
exceção. Note que a excessão foi gerada pela aplicação (erro Na Figura 12 vemos o exemplo da Figura 6 sendo enviado via
400) ao tentar-se dividir um número por 0 (zero). HTTP Post.
Conclusão
SOAP é o elemento principal da infraestrutura dos Web Services
e um fator determinante para o funcionamento dos mesmos,
independente de plataformas, sistemas operacionais, modelos de
objetos e lingüagens de programação, auxiliando muito a
interoperabilidade entre objetos e componentes distribuídos.