Perfil Básico WS-I

O Perfil Básico do Web Services-Interoperability (WS-I) é um conjunto de especificações de serviços da Web de não propriedade que promove a interoperabilidade. O WebSphere Application Server é compatível com o WS-I Basic Profile Versão 1.1 e com o WS-I Basic Security Profile Versão 1.0.

O WS-I Basic Profile é controlado por um consórcio de corporações líderes do segmento de mercado, inclusive aIBM®, sob direção do WS-I Organization. O perfil consiste em um conjunto de princípios que se relacionam para produzir padrões abertos para a tecnologia de serviços da Web. Todas as organizações que estiverem interessadas em promover a interoperabilidade entre serviços da Web são encorajadas a se tornarem membros do Web Services Interoperability Organization.

Vários componentes de tecnologia são usados na composição e na implementação de serviços da Web, incluindo sistema de mensagens, descrição, descoberta e segurança. Cada um desses componentes é suportado pelas especificações e padrões, incluindo o SOAP 1.1, XML (Extensible Markup Language) 1.0, HTTP 1.1, WSDL (Web Services Description Language) 1.1 e UDDI (Universal Description, Discovery and Integration). O WS-I Basic Profile especifica como esses componentes tecnológicos são utilizados juntos para conseguir interoperabilidade e obriga o uso específica de cada uma das tecnologias, quando apropriado. É possível ler mais sobre o Perfil Básico do WS-I no website do WS-I Organization.

À medida que os componentes de tecnologia são atualizados, esses componentes também são usados na composição e na implementação de serviços da Web. Um exemplo é que SOAP 1.1 e SOAP 1.2 agora são suportados.

Construído sobre o suporte para WS-I Basic Profile Versão 1.0, WS-I Basic Profile V1.1, Attachment Profile V1.0, Basic Security Profile (BSP) V1.0 e WS-I Basic Security Profile V1.1, é possível implementar serviços da Web com esse produto usando os seguintes perfis ativos do WS-I:
  • O WS-I Basic Profile V1.2 é construído sobre o WS-I Basic Profile V1.0 e WS-I Basic Profile V1.1 e inclui suporte para o WS-A (WS-Addressing) e o SOAP MTOM (Message Transmission Optimization Mechanism). A especificação WS-Addressing ativa o padrão de troca de mensagem assíncrona para que seja possível separar o pedido de serviço da resposta de serviço. O cabeçalho SOAP do pedido do emissor contém o valor wsa:ReplyTo que define a referência de terminal para a qual a resposta do provedor é enviada. O desacoplamento da solicitação de resposta permite interações de serviços da Web de longa execução. Com o uso do suporte do modelo de programação assíncrona no JAX-WS Versão 2.1 em combinação com o WS-Addressing, é possível agora aproveitar o recurso para criar chamadas de serviços da Web em que o cliente possa continuar a processar o trabalho sem esperar pelo retorno da resposta. Isso proporciona um modelo mais dinâmico e eficiente para chamar serviços da Web. Com o MTOM você pode enviar e receber dados binários de modo otimizado em uma mensagem SOAP.
  • O WS-I Basic Profile V2.0 é construído em Basic Profile V1.2 com a adição de suporte para SOAP 1.2.
  • O WS-I Reliable Secure Profile 1.0 é construído sobre o WS-I Basic Profile V1.2, WS-I Basic Profile V2.0, WS-I Basic Security Profile V1.0 e WS-I Basic Security Profile V1.1 e inclui suporte para o WS-Reliable Messaging 1.1, WS-Make Connection 1.0 e WS-Secure Conversation 1.3. O WS-Reliable Messaging 1.1 é um protocolo baseado em sessão que fornece confiabilidade no nível de mensagem para interações de serviços da Web. O WS-Make Connection 1.0 foi desenvolvido pelo grupo de trabalho do WS-Reliable Messaging para endereçar cenários em que um terminal de serviços da Web está por trás de um firewall ou o terminal não tem referência de terminal visível. Se um terminal de serviços da Web perder conectividade durante uma sessão confiável, o WS-Make Connection fornecerá um método eficiente para restabelecer a sessão confiável. Além disso, o WS-Secure Conversation V1.3 é um protocolo de segurança baseado em sessão que utiliza uma chave simétrica eficiente com base no algoritmo de criptografia para segurança em nível de mensagem. O WS-I Reliable Secure Profile V1.0 fornece interações seguras de serviços da Web orientadas a sessão confiável.

Cada um dos componentes de tecnologia possui requisitos que podem ser lidos com mais detalhes no website do WS-I Organization. Por exemplo, suporte para codificação UTF-16 (Universal Transformation Format) é requerido pelo WS-I Basic Profile. O UTF-16 é um tipo de esquema de codificação Unicode que utiliza valores de 16 bits para armazenar caracteres UCS (Universal Character Set). O UTF-8 é a codificação mais comum utilizada na Internet; a codificação UTF-16 é geralmente utilizada para os aplicativos de produto Java™ e Windows ; e o UTF-32 é utilizado por vários sistemas Linux e UNIX. Ao contrário da UTF-8, a UTF-16 tem problemas com big-endian e little-endian e, com frequência, envolve BOM (Byte Order Mark) para indicar endian. BOM é obrigatório para codificação em UTF-16 e pode ser utilizado em UTF-8.

O servidor de aplicativos só suporte a codificação UTF-8 e UTF-16 das mensagens SOAP.

Consulte as informações sobre mudança de codificação de mensagem SOAP para suportar WSI-Basic Profile para saber como modificar sua codificação de UTF-8 para UTF-16.

Tabela 1. Propriedades UTF. Especifica os bytes correspondentes e o formato de codificação para propriedades UTF.
Bytes Formato de Codificação
EF BB BF UTF-8
FF FE UTF-16, little-endian
FE FF UTF-16, big-endian
00 00 FE FF UTF-32, big-endian
FF FE 00 00 UTF-32, little-endian
BOM é gravado antes do texto XML e indica ao analisador como o XML está codificado. A declaração XML contém a codificação, por exemplo: <?xml version=xxx encoding="utf-xxx"?>. O BOM é utilizado com a codificação para determinar como interpretar o XML. Aqui está um exemplo de uma mensagem SOAP e como as codificações BOM e UTF são utilizadas:
POST http://www.whitemesa.net/soap12/add-test-rpc HTTP/1.1
Content-Type: application/soap+xml; charset=utf-16; action=""
SOAPAction:
Host: localhost: 8080
Content-Length: 562
OxFF0xFE<?xml version="1.0" encoding="utf-16"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2002/12/soap-envelope"
      xmlns:soapenc="http://www.w3.org/2002/12/soap-encoding
      xmlns:tns="http://whitemesa.net/wsdl/soap12-test"
      xmlns:types="http://whitemesa.net/wsdl/soap12-test/encodedTypes"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <soap:Body>
    <q1:echoString xmlns:q1="http://soapinterop.org/">
      <inputString soap:encodingStyle="http://example.org/unknownEncoding" 
                        xsi:type="xsd:string">
        Hello SOAP 1.2
      </inputString>
    </q1:echoString>
  </soap:Body>
</soap:Envelope>

No código de exemplo, 0xFF0xFE representa os códigos de bytes, enquanto a declaração <?xml> é uma representação de texto.

O suporte para styleEncoding não é suportado em SOAP 1.2, portanto aqui está a amostra da mensagem SOAP, mas sem a informação de codificação:
OxFF0xFE<?xml version="1.0" encoding="utf-16"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2002/12/soap-envelope"
      xmlns:soapenc="http://www.w3.org/2002/12/soap-encoding
      xmlns:tns="http://whitemesa.net/wsdl/soap12-test"
      xmlns:types="http://whitemesa.net/wsdl/soap12-test/encodedTypes"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <soap:Body>
    <q1:echoString xmlns:q1="http://soapinterop.org/">
      <inputString xsi:type="xsd:string">
        Hello SOAP 1.2
      </inputString>
    </q1:echoString>
  </soap:Body>
</soap:Envelope>

Para obter uma lista completa de padrões e especificações suportados, consulte as especificações de serviços da Web e a documentação da API.


Ícone que indica o tipo de tópico Tópico de Conceito



Ícone de registro de data e hora Última atualização: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cwbs_wsiprofile
Nome do arquivo: cwbs_wsiprofile.html