You are on page 1of 66

Web Services

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

Tpicos

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

Introduo

A expresso servios Web utilizada para classificar aplicaes que so expostos em uma rede via o uso de padres XML e protocolos de Internet de tal modo que eles sejam bastante interoperveis com outros aplicativos distribudos distintos So baseados no estilo da arquitetura SOA So componentes de aplicao Se comunicam usando protocolos abertos So independentes e auto-descritivos XML a base para servios Web

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

SOA x Web Services

SOA

um modelo de arquitetura de software voltado para a construo de aplicaes que implementam processos de negcio ou servios utilizando um conjunto de componentes fracamente acoplados e orquestrados a fim de prover um nvel de servio bem definido uma abordagem para implementar a SOA com o uso de protocolos de comunicao e representaes de dados com base em XML para alcanar independncia de plataforma e, consequentemente, a interoperabilidade

Web Services

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

Modelo operacional triangular da SOA

Registro

Localizao

Publicao

Consumidor

Execuo

Provedor

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

Modelo operacional triangular do Web Services


Registro UDDI
<soap> </soap> <soap> </soap>

2. Localizao

1. Publicao

Consumidor

4. Invocar o servio

Provedor

<wsdl> </wsdl>

3. Baixar o WSDL Localizao do documento WSDL que pode estar na rede e muitas vezes est no Provedor de servio

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

Modelo operacional triangular do Web Services

1. Um provedor publica seu servio em um registrador UDDI (ou em vrios)


Utiliza-se o SOAP para publicao Utiliza-se o SOAP para localizao

2. O servio localizado pelo consumidor no registrador

3. O consumidor usa a informao localizada do servio para localizar e baixar uma cpia da descrio WSDL 4. O consumidor usa a informao do WSDL para vincular-se ao servio Web e invoc-lo

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

Como trabalham os Web Services?

A base da plataforma de servios da Web XML + HTTP XML fornece uma linguagem que pode ser usado entre diferentes plataformas e linguagens de programao e ainda expressa mensagens e funes complexas O protocolo HTTP o mais usado protocolo de Internet Elementos de plataforma de servios da Web:

SOAP (Simple Object Access Protocol) UDDI (Universal Description Discovery and Integration) WSDL (Web Services Description Language)

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

Tipos de uso dos Web Services

Componentes reutilizveis Conexo de softwares existentes

Servios da Web podem ajudar a resolver o problema de interoperabilidade, dando diferentes aplicaes uma maneira de unir os seus dados. Com os servios da Web, voc pode trocar dados entre diferentes aplicaes e plataformas diferentes.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

SOAP Introduo

Significa Simple Object Access Protocol um protocolo para acessar um Web Service baseado em XML para permitir que aplicaes troquem informaes sobre HTTP um formato para envio de mensagens independente de plataforma e de linguagem simples e extensvel Permite contornar firewalls um padro W3C

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

SOAP Introduo

O principal uso de SOAP a comunicao aplicativo a aplicativo (A2A application-to-application), especificadamente de:

Negcio a negcio (B2B business-to-business) Integrao de aplicativos corporativos (EAI enterprise application integration)

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

SOAP Introduo

Conceitos importantes

Remetente SOAP

N que gera e transmite uma mensagem SOAP N que recebe e processa a mensagem SOAP que foi gerada pelo remetente N que considerado tanto receptor quanto remetente Podem existir zero ou mais intermedirios Podem realizar pr-processamento da mensagem antes de ela atingir seu destino final Usado comumente para segurana, acesso e transaes
rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

Receptor SOAP

Intermedirio SOAP

SOAP Introduo
Remetente Mensagem SOAP

Remetente inicial

Intermedirio

Mensagem SOAP

Primeiro intermedirio

Intermedirio

Mensagem SOAP

Ensimo intermedirio Receptor final


rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

Receptor

SOAP Padres de troca de mensagem

Solicitao/Resposta Resposta Unidirecional Notificao Solicitao nica/Vrias respostas Solicitar/Resposta

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

SOAP Padres de troca de mensagem

Solicitao/Resposta

O remetente transmite uma mensagem SOAP solicitando alguma informao e o remetente envia uma mensagem SOAP de resposta

<soap> </soap>

Remetente
<soap> </soap>

Receptor

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

SOAP Padres de troca de mensagem

Resposta

Idntico ao padro Solicitao/Resposta, porm o remetente transmite uma mensagem no SOAP solicitando alguma informao e o remetente envia uma mensagem de resposta SOAP

Mensagem No SOAP

Remetente
<soap> </soap>

Receptor

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

SOAP Padres de troca de mensagem

Unidirecional

O remetente transmite uma mensagem SOAP ao receptor sem retorno de resposta Pode ser usado para modelar chamadas assncronas de procedimento remoto Tambm conhecido como Dispare-E-Esquea Exemplo desse padro o envio de mensagens de e-mail
<soap> </soap>

Remetente

Receptor

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

SOAP Padres de troca de mensagem

Notificao

O receptor transmite uma ou mais mensagens SOAP ao remetente sem retorno de uma resposta de volta Assemelha-se a notificao de eventos Pode ser uma resposta a uma chamada assncrona de procedimento remoto
<soap> </soap>

<soap> </soap>

Remetente
<soap> </soap>

Receptor

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

SOAP Padres de troca de mensagem

Solicitao nica/Vrias respostas

similar ao padro Solicitao/Resposta, exceto que o receptor transmite zero ou mais mensagens de volta ao remetente em resposta solicitao inicial Tambm chamado de Solicitao/Resposta N*
<soap> </soap>

<soap> </soap>

Remetente
<soap> </soap>

Receptor

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

SOAP Padres de troca de mensagem

Solicitar/Resposta

o inverso do padro Solicitao/Resposta O receptor que transmite uma mensagem SOAP inicial e o remetente ir responder com outra mensagem SOAP
<soap> </soap>

Remetente
<soap> </soap>

Receptor

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

SOAP Regras de sintaxe

Uma mensagem SOAP

Deve ser codificada usando XML Deve usar os namespaces:


SOAP Envelope SOAP Encoding Uma referncia DTD Instrues de processamento XML

No deve conter:

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

SOAP Exemplo de documento SOAP


<?xml version="1.0"?> <soap:Envelope xmlns:soap="http://www.w3.org/2001/1 2/soap-envelope" soap:encodingStyle="http://www.w3.org/ 2001/12/soap-encoding"> <soap:Header> ... </soap:Header> <soap:Body> ... <soap:Fault> ... </soap:Fault> </soap:Body> </soap:Envelope>

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

SOAP Estrutura de uma mensagem SOAP


POST /item HTTP/1.1 Host: 189.123.345.239 Content-Type: text/plain Content-Length: 200

Cabealho HTTP

<?xml version="1.0"?> <soap:Envelope> <soap:Body> </soap:Body> </soap:Envelope>


DKDSdeNEIUD/239NDNdrIDKL DJQU48812ndwhdirae34DJALD...
rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

Mensagem SOAP Refere-se a Anexos GIF, JPG, PDF, etc

SOAP Elemento Envelope

obrigatrio a raiz de uma mensagem SOAP Define que um documento XML uma mensagem SOAP Namespace xmlns:soap

Defines o elemento Envelope como um envelope SOAP Deve ter sempre o valor de http://www.w3.org/2001/12/soap-envelope

Se um namespace diferente for usado, a aplicao gera um erro e descarta a mensagem

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

SOAP Elemento Envelope

Attributo encodingStyle

usado para definir os tipos de dados usados no documento Pode aparecer em qualquer elemento SOAP e aplica-se o contedo do elemento e todos os elementos filho Uma mensagem SOAP no tem codificao padro Sintaxe:

soap:encodingStyle=URI

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

SOAP Elemento Header

opcional Contm informaes especficas do aplicativo (como autenticao, por exemplo) sobre a mensagem SOAP Se o elemento do cabealho est presente, deve ser o primeiro elemento filho do elemento Envelope Todos os elementos filho imediato do elemento Header deve ser qualificado de namespace

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

SOAP Exemplo de documento SOAP


<?xml version="1.0"?> <soap:Envelope xmlns:soap="http://www.w3.org/2001/1 2/soap-envelope" soap:encodingStyle="http://www.w3.org/ 2001/12/soap-encoding"> <soap:Header> <m:Trans xmlns:m="http://www.w3schools.com/tr ansaction/" soap:mustUnderstand="1">234 </m:Trans> </soap:Header> ... </soap:Envelope>
rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

SOAP Elemento Header

O exemplo anterior contm um cabealho com um elemento Trans com valor 234 e este elemento possui um atributo mustUnderstand com valor de 1

O elemento Trans vem do namespace http://www.w3schools.com/transaction/ O atributo mustUnderstand vem do namespace http://www.w3.org/2001/12/soap-envelope

SOAP define trs atributos do namespace http://www.w3.org/2001/12/soap-envelope:

mustUnderstand ator encodingStyle


rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

SOAP Elemento Header

Atributo mustUnderstand

Pode ser usado para indicar se uma entrada de cabealho obrigatria ou facultativa para que o destinatrio do processo Se mustUnderstand="1", ento o receptor deve reconhecer o cabealho

Se no reconhecer, ocorrer uma falha durante o processamento do cabealho soap:mustUnderstand="0|1"

Sintaxe

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

SOAP Elemento Header

Atributo actor

usado para enderear o elemento Header para um endpoint especfico Uma mensagem SOAP pode viajar de um remetente para um receptor, passando parmetros diferentes ao longo do caminho da mensagem Nem todas as partes de uma mensagem SOAP pode ser destinado para o endpoint final, em vez disso, podem ser destinados a um ou mais dos endpoints no caminho da mensagem Sintaxe:

soap:actor="URI"
rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

SOAP Exemplo de documento SOAP


<?xml version="1.0"?> <soap:Envelope xmlns:soap="http://www.w3.org/2001/1 2/soap-envelope" soap:encodingStyle="http://www.w3.org/ 2001/12/soap-encoding"> <soap:Header> <m:Trans xmlns:m="http://www.w3schools.com/tra nsaction/" soap:mustUnderstand="1" soap:actor="http://www.w3schools.com/ appml/">234 </m:Trans> </soap:Header> </soap:Envelope>
rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

SOAP Elemento Body

obrigatrio A necessria elemento SOAP Body contm a mensagem SOAP reais destinados ao desfecho final da mensagem. Elementos filhos de Body devem ser qualificados pelo namespace

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

SOAP Exemplos de documento SOAP


Mensagem SOAP de solicitao: <?xml version="1.0"?> <soap:Envelope xmlns:soap="http://www.w3.org/2001/1 2/soap-envelope" soap:encodingStyle="http://www.w3.org/ 2001/12/soap-encoding"> <soap:Body> Mensagem SOAP de resposta: <?xml version="1.0"?> <soap:Envelope xmlns:soap="http://www.w3.org/2001/1 2/soap-envelope" soap:encodingStyle="http://www.w3.org/ 2001/12/soap-encoding"> <soap:Body>

<m:GetPreco <m:GetPrecoResposta xmlns:m="http://www.w3schools.com/pri xmlns:m="http://www.w3schools.com/pri ces"> ces"> <m:Item>Pizza congelada</m:Item> </m:GetPreco> </soap:Body> </soap:Envelope> <m:Preco>10,90</m:Preco> </m:GetPrecoResposta> </soap:Body> </soap:Envelope>

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

SOAP Elemento Fault

opcional usado para indicar mensagens de erro Pode aparecer apenas uma vez em uma mensagem SOAP Se um elemento de falha estiver presente, ele deve aparecer como um elemento filho do elemento Body

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

SOAP Elemento Fault - Subelementos


Subelemento <faultcode> <faultstring> <faultactor> <detail> Descrio Cdigo para identificar a falha Explicao legvel da falha Informaes sobre quem causou a falha acontecer Mantm informaes de erros especficos relacionados com o elemento Body

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

SOAP Elemento Fault Cdigos de Falha


Erro VersionMismatch MustUnderstand Client Server Descrio Encontrado um namespace invlido para o elemento Envelope Um elemento filho imediato do elemento Header, com o atributo mustUnderstand definido como "1", no foi compreendido A mensagem foi formada incorretamente ou continha informaes incorretas Houve um problema com o servidor para que a mensagem no poderia proceder

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

SOAP HTTP Binding

Um cliente HTTP conecta a um servidor HTTP usando TCP Aps estabelecer uma conexo, o cliente pode enviar uma mensagem de solicitao HTTP para o servidor:

POST /item HTTP/1.1 Host: 189.123.345.239 Content-Type: text/plain Content-Length: 200

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

SOAP HTTP Binding

O servidor processa a requisio e envia uma resposta HTTP para o cliente A resposta contm um cdigo de status que indica o status da requisio:

200 OK Content-Type: text/plain Content-Length: 200

Se o servidor no conseguiu decodificar a solicitao, ele poderia ter retornado algo como isto:

400 Bad Request Content-Length: 0


rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

SOAP SOAP HTTP Binding

Um mtodo SOAP uma solicitao/resposta em HTTP que cumpre as regras de codificao SOAP HTTP + XML = SOAP Uma solicitao SOAP pode ser

HTTP POST HTTP GET

A solicitao HTTP POST especifica pelo menos dois cabealhos HTTP:

Content-Type Content-Length

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

SOAP SOAP HTTP Binding

Content-Type

Define o tipo MIME da mensagem e da codificao de caracteres (opcional) utilizados para o corpo XML do requisio ou resposta Sintaxe

Content-Type: MIMEType; charset=character-encoding POST /item HTTP/1.1 Content-Type: application/soap+xml; charset=utf-8

Exemplo

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

SOAP SOAP HTTP Binding

Content-Length

Especifica o nmero de bytes no corpo do pedido ou resposta Sintaxe

Content-Length: bytes POST /item HTTP/1.1 Content-Type: application/soap+xml; charset=utf-8 Content-Length: 250

Exemplo

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

WSDL Introduo

Significa Web Services Description Language baseado em XML usado para descrever servios Web Tambm usado para localizar os servios da Web um padro W3C

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

WSDL Estrutura de um documento WSDL


<definitions> <types> Definio de tipos </types> <message> Definio de uma mensagem </message> <portType> Definio de uma porta </portType>
rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

<binding> Definio de um binding </binding> <service> Definio de um servio </service> </definitions>

WSDL Estrutura de um documento WSDL


<definitions> <types> Definio de tipos </types> <message> Definio de uma mensagem </message> <portType> </portType> Interface abstrata </definitions> Uma implementao concreta Implementa a interface abstrata E agrega um ou mais pontos De entrega concretos <service> Definio de um servio </service> Pontos de entrega concretos <binding> Definio de um binding </binding> Implementao concreta

Definio de uma porta

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

WSDL Estrutura de um documento WSDL


Elemento <types> <message> <portType> <binding> Descrio Define os tipos dos dados usados no servio Web Define as mensagens usadas no servio Web Descreve um Web Service, as operaes que podem ser executadas e as mensagens que esto envolvidos o elemento mais importante do WSDL Define os detalhes do formato da mensagem e um protocolo para cada porta

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

WSDL Elemento <portType>

o elemento mais importante do WSDL Ele define:

Um web service As operaes que podem ser executadas As mensagens que esto envolvidos.

Define o ponto de ligao para a um servio web Pode ser comparada a uma uma classe feita por uma linguagem orientada a objeto

Cada operao definida no WSDL pode ser comparada a um mtodo da classe

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

WSDL Tipos de operaes


Tipo One-way Request-response Solicit-response Notification Descrio A operao pode receber uma mensagem, mas no retornar nenhuma reposta A operao pode receber uma mensagem e retornar uma reposta A operao pode enviar uma mensagem e esperar uma reposta A operao pode enviar uma mensagem, mo no esperar nenhuma reposta

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

UDDI

Significa Universal Description, Discovery and Integration um servio de diretrio onde as empresas podem se registrar e procurar por Web Services um diretrio para armazenar informaes sobre os servios web um diretrio de web service interfaces descritas por WSDL Comunica via UDDI SOAP Est incorporada no Microsoft.NET Usa padres da W3C e da ITEF (Internet Engineering Task Force), como XML, HTTP e DNS. Usa o WSDL para descrever interfaces de web services. rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

Questes!!!

6. [CESPE 2009 TCE/RN - Questo 61] Nos servios web, clientes e servidores, direta ou indiretamente, podem acessar documentos UDDI completos por meio de seus URIs (uniform resource identifier), usando um servio de diretrio, tal como o WSDL.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

Questes!!!

6. [CESPE 2009 TCE/RN - Questo 61] Nos servios web, clientes e servidores, direta ou indiretamente, podem acessar documentos UDDI completos por meio de seus URIs (uniform resource identifier), usando um servio de diretrio, tal como o WSDL.

Gabarito: ERRADO. Cruzamento indevido entre WSDL e UDDI.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

Questes!!!

7. [CESPE 2008 TRT/BA - Questo 70] O UDDI uma especificao tcnica que tem como objetivo descrever, descobrir e integrar web services; embasado na tecnologia XML, que fornece uma plataforma neutra de dados e permite descrever relaes hierrquicas de modo natural.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

Questes!!!

7. [CESPE 2008 TRT/BA - Questo 70] O UDDI uma especificao tcnica que tem como objetivo descrever, descobrir e integrar web services; embasado na tecnologia XML, que fornece uma plataforma neutra de dados e permite descrever relaes hierrquicas de modo natural.

Gabarito: CERTO.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

Questes!!!

8. [CESPE 2008 TRT/BA - Questo 69] Na viso do SOA, XML e WSDL so padres abertos que permitem que os servios se comuniquem de maneira homognea, independentemente da plataforma de hardware, do sistema operacional e da linguagem de programao nos quais o servio est implementado.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

Questes!!!

8. [CESPE 2008 TRT/BA - Questo 69] Na viso do SOA, XML e WSDL so padres abertos que permitem que os servios se comuniquem de maneira homognea, independentemente da plataforma de hardware, do sistema operacional e da linguagem de programao nos quais o servio est implementado.

Gabarito: CERTO.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

Questes!!!

9. [CESPE 2008 TRT/BA - Questo 68] No SOA, os web services permitem que os aplicativos se comuniquem entre si de modo independente da plataforma e da linguagem de programao. Os web services utilizam WSDL para descrever interfaces de aplicativos na linguagem XML.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

Questes!!!

9. [CESPE 2008 TRT/BA - Questo 68] No SOA, os web services permitem que os aplicativos se comuniquem entre si de modo independente da plataforma e da linguagem de programao. Os web services utilizam WSDL para descrever interfaces de aplicativos na linguagem XML.

Gabarito: ERRADO. Os web services utilizam XML para descrever interfaces de aplicativos na linguagem WSDL.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

Questes!!!

10. [CESPE 2009 INMETRO - Cargo 11 - Questo 58] Na SOA, a descrio do servio mantida em um repositrio WSDL, em formato UDDI (universal description, discovery and integration).

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

Questes!!!

10. [CESPE 2009 INMETRO - Cargo 11 - Questo 58] Na SOA, a descrio do servio mantida em um repositrio WSDL, em formato UDDI (universal description, discovery and integration).

Gabarito: ERRADO. Na SOA, a descrio do servio mantida em um repositrio UDDI, em formato WSDL.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

Estrutura do WSDL

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

Estrutura do WSDL

<types>: tipos de dados usados pelo web service <message>

Define os elementos de dados de uma operao. Cada mensagem pode consistir de uma ou mais partes. As partes so como os parmetros de uma chamada de funo em uma linguagem de programao tradicional. Elemento mais importante elemento do WSDL. Descreve um Web Service, as operaes que podem ser executadas, e as mensagens que esto envolvidas. Pode ser comparado a uma biblioteca de funes (ou um mdulo ou uma classe) em uma linguagem de programao tradicional.

<portType>

<binding>: define os detalhes do formato da mensagem e protocolo para cada porta.


rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

Estrutura do WSDL

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

Questes!!!

11. [CESPE 2009 TCU - Questo 139] Em WSDL, os elementos do tipo types descrevem todos os tipos de dados usados entre cliente e servidor. O WSDL est exclusivamente ligado a um sistema de tipagem especfico pois utiliza, como padro, um esquema de especificao W3C XML.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

Questes!!!

11. [CESPE 2009 TCU - Questo 139] Em WSDL, os elementos do tipo types descrevem todos os tipos de dados usados entre cliente e servidor. O WSDL est exclusivamente ligado a um sistema de tipagem especfico pois utiliza, como padro, um esquema de especificao W3C XML.

Gabarito: ERRADO. O WSDL no est exclusivamente ligado a um sistema de tipagem especfico, pois tipos podem ser definidos de acordo com o servio disponibilizado.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

Estrutura do SOAP

Algumas regras de sintaxe importantes para mensagens SOAP:

DEVE ser codificado usando XML. DEVE usar o namespace SOAP Envelope. DEVE usar o namespace SOAP Encoding. NO DEVE conter uma referncia DTD. NO DEVE conter instrues de processamento XML.

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

Estrutura do SOAP

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

Referncias

http://www.w3schools.com/webservices/default.asp http://www.w3schools.com/wsdl/default.asp http://www.w3schools.com/soap/default.asp http://ws.apache.org/wsif/index.html

rogerioaraujo.wordpress.com twitter: @rgildoaraujo - rgildoarauj@gmail.com

You might also like