Padrões de Serviços da Web

Um dos atributos-chave de padrões da Internet é que eles se concentram em protocolos e não em implementação. A Internet é composta por tecnologias heterogêneas que interoperam com sucesso através de protocolos compartilhados. Isso impede que fornecedores individuais imponham um padrão na Internet. O desenvolvimento de software livre desempenha uma função crucial na preservação da interoperabilidade das implementações de padrões por fornecedores.

Os seguintes padrões desempenham funções-chave em serviços da Web: UDDI (Descrição, Descoberta e Integração Universais), WSDL (Web Services Description Language), WSIL (Web Services Inspection Language), SOAP e WS-I (Web Services Interoperability). O relacionamento entre esses padrões é descrito na Figura 2.

A especificação UDDI define padrões abertos independentes de plataforma que permitem que as empresas compartilhem informações em um registro de negócios global, descubram serviços no registro e definam como eles interagem pela Internet. Para obter informações adicionais sobre UDDI, consulte www.uddi.org

WSIL é uma especificação aberta baseada em XML que define um método de descoberta de serviços distribuídos que fornece referências a descrições de serviços no ponto de oferta do fornecedor de serviços, especificando como inspecionar um Web site em busca dos serviços da Web disponíveis. Um documento WSIL define os locais em um Web site onde é possível procurar descrições de serviços da Web. Como a WSIL concentra-se na descoberta de serviços da Web, a especificação WSIL complementa o UDDI facilitando a descoberta de serviços que estão disponíveis em Web sites que podem ainda não estar listados em um registro UDDI. Um tópico separado nesta documentação discute o Relacionamento entre UDDI e WSIL. Para obter informações adicionais sobre WSIL, consulte www.ibm.com/developerworks/webservices/library/ws-wsilspec.html

WSDL é uma especificação aberta baseada em XML que descreve as interfaces para serviços da Web na rede e suas instâncias. Ela é extensível, portanto, é possível descrever terminais independentemente dos formatos de mensagem ou dos protocolos de rede que são usados para a comunicação. As empresas podem disponibilizar os documentos WSDL para seus serviços da Web através de UDDI, WSIL, ou difundindo as URLs para seus WSDL por e-mail ou Web sites. A WSDL é descrita como um tópico separado nesta documentação. Para obter informações adicionais sobre WSDL, consulte www.w3.org/TR/wsdl

SOAP é um padrão baseado em XML para sistemas de mensagens sobre HTTP e outros protocolos de Internet. É um protocolo reduzido para o intercâmbio de informações em um ambiente distribuído descentralizado. Ele se baseia em XML e consiste em três partes: O SOAP permite a ligação e o uso de serviços da Web descobertos, definindo um caminho de mensagem para rotear mensagens. O SOAP pode ser usado para consultar o UDDI em busca de serviços da Web. Para obter informações adicionais sobre o SOAP 1.1 (o SOAP 1.2 não é suportado pelas ferramentas de serviços da Web), consulte www.w3.org/TR/SOAP

Figura 2. Relacionamentos entre SOAP, UDDI, WSIL e WSDL.

A Figura 2 ilustra os relacionamentos entre SOAP, UDDI, WSIL e WSDL.

Um fornecedor de serviços hospeda um serviço da Web e o disponibiliza usando protocolos como o SOAP/HTTP ou o SOAP/JMS. O serviço da Web é descrito por um documento WSDL que é armazenado no servidor do provedor ou em um repositório especial. O documento WSDL pode ser referenciado pelo registro de negócios UDDI e por documentos WSDL. Estes contêm ponteiros para os arquivos WSDL do serviço da Web.

O WS-I Simple SOAP Binding Profile e o WS-I Attachments Profile são esboços de requisitos com os quais o tráfego do protocolo WSDL e de serviços da Web (SOAP/HTTP) devem estar de acordo para reivindicar conformidade com WS-I. As ferramentas de validação WS-I de serviços da Web suportam atualmente o WS-I Simple SOAP Binding Profile 1.0 e o Attachment Profile 1.0. Para visualizar as especificações, consulte o Web site do WS-I e, em Resources, selecione Documentation: http://www.ws-i.org

Diversos padrões de novos serviços da Web também são suportados por este ambiente de desenvolvimento. Isso inclui:
JAX-RPC
JAX-RPC significa Java™ API for XML-based RPC, também conhecido como JSR 101. É uma especificação que descreve APIs (interfaces de programação de aplicativos) Java e convenções para construir serviços da Web e clientes de serviços da Web que utilizam chamadas de procedimento remoto (RPC) e XML. Ela padroniza os mapeamentos de Java para WSDL e de WSDL para Java, e fornece as APIs de núcleo para desenvolver e implementar serviços da Web e clientes de serviços da Web na plataforma Java. Para obter informações adicionais, consulte as especificações oficiais.
JSR-109
O JSR-109 (Implementando Serviços da Web Corporativos) define o modelo de programação e a arquitetura de tempo de execução para implementar e consultar serviços da Web no ambiente Java EE; mais especificamente, nos contêineres da Web, EJB e de Aplicativo Cliente. Um de seus principais objetivos é assegurar a interoperação de implementações de fornecedores. Para obter informações adicionais, consulte as especificações oficiais:
WS-S
Estas ferramentas suportam o padrão OASIS Web Services Security 1.0. Para obter informações adicionais sobre os diversos componentes deste padrão, consulte:

As ferramentas de serviços da Web suportam as seguintes especificações:

Tecnologia ou especificação Versão ou nível suportados
Transportes
HTTP/HTTPS v1.0 e v1.1
JMS  
Sistema de Mensagens
Especificação SOAP v1.1
Anexos SOAP  
Descrição
UDDI v2.0
WSDL v1.1
WSIL v1.0
Segurança
WS-Security Padrão OASIS 1.0
Interoperabilidade
Perfil Básico WS-I 1.1.2
Perfil de Ligação SOAP Simples WS-I 1.0.3
Perfil de Anexos do WS-I 1.0
Outros Padrões  
JAX-RPC v1.0 para J2EE 1.3, v1.1 para J2EE 1.4 e Java EE 1.5
JSR 109