É possível customizar a tag XML das mensagens que os aplicativos clientes
enviam e recebem de serviços da Web.
Para cada operação incluída em um serviço da Web, o ambiente de trabalho gera
um esquema XML padrão que descreve as mensagens XML de entrada e de saída dessa
operação. Se uma mensagem de entrada para uma operação de serviço da Web estiver em XML,
as mensagens deverão ser marcadas de acordo com esse esquema XML padrão. Todas as mensagens de saída
que os serviços da Web geram para a operação também são marcadas de acordo com
o esquema XML padrão.
Você pode configurar transformações XSL das mensagens de entrada XML, das mensagens
de saída ou de ambos os tipos de mensagens para uma operação de serviço da Web. Essas
transformações XSL ocorrem durante os fluxos de mensagens de entrada e de saída.
O fluxo de mensagens SOAP/HTTP e HTTP POST (text/xml) customizadas envolve
duas transformações XSL: uma para mensagens de entrada e uma para mensagens de saída.
O fluxo de mensagens HTTP GET/POST (codificadas por url) envolve apenas uma
transformação XSL, a qual destinar-se a mensagens de saída.
Transformações XSL com o Protocolo de Mensagem SOAP/HTTP
Essa
seção descreve o fluxo de mensagens padrão para mensagens SOAP/HTTP e, em seguida,
descreve o fluxo que incorpora transformações XSL.
O fluxo de mensagens
padrão, que não contém transformações XSL, para uma operação de serviço da Web
segue estas etapas:
- Um aplicativo cliente envia uma mensagem SOAP/HTTP que acessa uma operação
em um serviço da Web. O corpo da mensagem está em XML e é marcado de acordo
com o esquema padrão.
- O serviço da Web recebe a mensagem e transmite para o banco de dados a instrução SQL
ou chamada de procedimento armazenado que está na operação.
- O serviço da Web recebe a resposta do banco de dados e empacota a resposta em uma mensagem XML que é identificada de acordo com o esquema XML padrão para a operação.
- O serviço da Web envia a resposta para o aplicativo cliente.
Figura 1. Fluxo de Mensagens Padrão
Quando você configura transformações XSL, o fluxo de mensagens para uma
operação de serviço da Web segue estas etapas:
- Um aplicativo cliente envia uma mensagem SOAP/HTTP que acessa uma operação
em um serviço da Web. A mensagem XML no corpo SOAP é marcada de acordo com
um esquema XML customizado.
- A mensagem é transformada, para que seja marcada de acordo com o
esquema XML padrão.
- O serviço da Web recebe a mensagem e transmite para o banco de dados a instrução SQL
ou chamada de procedimento armazenado que está na operação.
- O serviço da Web recebe a resposta do banco de dados e empacota a resposta em uma mensagem XML que é identificada de acordo com o esquema XML padrão para a operação.
- A mensagem é transformada, para que seja marcada de acordo com o esquema
XML customizado.
- O serviço da Web envia a resposta para o aplicativo cliente.
Figura 2. Fluxo de Mensagens que Incorpora Transformações XSL
Tabela 1. Entradas e Saídas das Transformações XSL |
Entrada para a Transformação XSL |
Saída da Transformação XSL |
Primeira transformação XSL |
Documento XML válido agrupado por SOAP que utiliza um esquema XML customizado |
Documento XML válido agrupado por SOAP que utiliza um esquema XML padrão |
Segunda transformação XSL |
Documento XML válido agrupado por SOAP que utiliza um esquema XML padrão |
Documento XML válido agrupado por SOAP que utiliza um esquema XML customizado |
Conforme descrito na seguinte tabela, quando você cria o serviço da Web, é necessário fornecer os seguintes arquivos:
- Para ativar a primeira transformação, é necessário fornecer o serviço da Web com
uma cópia do esquema XML customizado e um arquivo XSL que mapeia o esquema XML customizado
para o esquema XML padrão.
- Para ativar a segunda transformação, é necessário fornecer o serviço da Web com
uma cópia do esquema XML customizado e um arquivo XSL que mapeia o esquema XML padrão
para o esquema XML customizado.
Tabela 2. Arquivos que Você Deve Fornecer para o Serviço da Webtransformação XSL
da mensagem de entrada |
transformação XSL
da mensagem de saída |
Esquema XML customizado (arquivo XSD) |
Arquivo XSL |
Esquema XML customizado (arquivo XSD) |
Arquivo XSL |
X |
X |
X |
X |
Transformações XSL com o Protocolo de Mensagem HTTP POST
(text/xml)
Essa seção descreve o fluxo de mensagens padrão
para mensagens HTTP POST (text/xml) e, em seguida, descreve o fluxo que
incorpora transformações XSL.
O fluxo de mensagens
padrão, que não contém transformações XSL, para uma operação de serviço da Web
segue estas etapas:
- Um aplicativo cliente envia uma mensagem HTTP POST (text/xml) que acessa
uma operação em um serviço da Web. A mensagem está em XML e é marcada de acordo
com o esquema padrão.
- O serviço da Web recebe a mensagem e transmite para o banco de dados a instrução SQL
ou chamada de procedimento armazenado que está na operação.
- O serviço da Web recebe a resposta do banco de dados e empacota a resposta em uma mensagem XML que é identificada de acordo com o esquema XML padrão para a operação.
- O serviço da Web envia a resposta para o aplicativo cliente.
Figura 3. Fluxo de Mensagens Padrão
Quando você configura transformações XSL, o fluxo de mensagens para uma
operação de serviço da Web segue estas etapas:
- Um aplicativo cliente envia uma mensagem HTTP POST (text/xml) que acessa
uma operação em um serviço da Web. A mensagem é marcada de acordo com um esquema
XML customizado.
- A mensagem é transformada, para que seja marcada de acordo com o
esquema XML padrão.
- O serviço da Web recebe a mensagem e transmite para o banco de dados a instrução SQL
ou chamada de procedimento armazenado que está na operação.
- O serviço da Web recebe a resposta do banco de dados e empacota a resposta em uma mensagem XML que é identificada de acordo com o esquema XML padrão para a operação.
- A mensagem é transformada, para que esteja em XML e marcada de acordo com o
esquema XML customizado ou esteja em um formato que não seja XML como, por exemplo, HTML ou texto simples.
- O serviço da Web envia a resposta para o aplicativo cliente.
Figura 4. Fluxo de Mensagens que Incorpora Transformações XSL
Tabela 3. Entradas e Saídas das Transformações XSL |
Entrada para a Transformação XSL |
Saída da Transformação XSL |
Primeira transformação XSL |
Documento XML válido que utiliza o esquema XML
customizado |
Documento XML válido que utiliza o esquema XML
padrão |
Segunda transformação XSL |
Documento XML válido que utiliza o esquema XML
padrão |
Documento não XML ou documento XML válido que utiliza um esquema XML customizado |
Conforme descrito na seguinte tabela, quando você cria o serviço da Web, é necessário fornecer os seguintes arquivos:
- Para ativar a primeira transformação, é necessário fornecer o serviço da Web apenas com
um arquivo XSL que mapeia o esquema XML customizado para o esquema padrão. Você não precisa fornecer uma cópia do esquema XML customizado.
- Para ativar a segunda transformação, os arquivos fornecidos para o
serviço da Web dependem da saída que você precisa:
- Para ativar a transformação XML, é necessário fornecer o serviço da Web apenas com
um arquivo XSL que mapeia o esquema XML customizado para o esquema padrão. Você não precisa fornecer uma cópia do esquema XML customizado.
- Para ativar a transformação para um formato que não seja XML, é necessário fornecer um arquivo XSL
que mapeia o esquema XML customizado para o formato que não seja XML.
Tabela 4. Arquivos que Você Deve Fornecer para o Serviço da WebTransformação XSL
da mensagem de entrada |
Transformação XSL
da mensagem de saída |
Esquema XML customizado (arquivo XSD) |
Arquivo XSL |
Esquema XML customizado (arquivo XSD) |
Arquivo XSL |
|
X |
|
X |
Transformações XSL com o Protocolo de Mensagem HTTP GET/POST
(codificada por url)
Essa seção descreve o fluxo de mensagens padrão
para mensagens HTTP POST (codificadas por url) e mensagens HTTP POST (codificadas por url) e, em seguida,
descreve o fluxo que incorpora transformações XSL.
O fluxo de mensagens
padrão, que não contém transformações XSL, para uma operação de serviço da Web
segue estas etapas:
- Um aplicativo cliente envia uma mensagem HTTP GET (codificada por url) ou HTTP POST (codificada por url)
que acessa uma operação em um serviço da Web. A mensagem é uma seqüência codificada de
parâmetros na cadeia de texto.
- O serviço da Web recebe a mensagem e transmite para o banco de dados a instrução SQL
ou chamada de procedimento armazenado que está na operação.
- O serviço da Web recebe a resposta do banco de dados e empacota a resposta em uma mensagem XML que é identificada de acordo com o esquema XML padrão para a operação.
- O serviço da Web envia a resposta para o aplicativo cliente.
Figura 5. Fluxo de Mensagens Padrão
Quando você configura uma transformação XSL, o fluxo de mensagens para uma
operação de serviço da Web segue estas etapas:
- Um aplicativo cliente envia uma mensagem HTTP GET (codificada por url) ou HTTP POST (codificada por url)
que acessa uma operação em um serviço da Web. A mensagem codifica os
parâmetros. As transformações XSL não são possíveis nessas mensagens.
- O serviço da Web recebe a mensagem e transmite para o banco de dados a instrução SQL
ou chamada de procedimento armazenado que está na operação.
- O serviço da Web recebe a resposta do banco de dados e empacota a resposta em uma mensagem XML que é identificada de acordo com o esquema XML padrão para a operação.
- A mensagem é transformada, para que esteja em XML e marcada de acordo com o
esquema XML customizado ou esteja em um formato que não seja XML como, por exemplo, HTML ou texto simples.
- O serviço da Web envia a resposta para o aplicativo cliente.
Figura 6. Fluxo de Mensagens que Incorpora uma Transformação XSL
Tabela 5. Entradas e Saídas das Transformações XSL |
Entrada para a Transformação XSL |
Saída da Transformação XSL |
Primeira transformação XSL |
As transformações XSL
não são suportadas por mensagens de aplicativos cliente. |
Segunda transformação XSL |
Documento XML válido que utiliza o esquema XML
padrão |
Documento não XML ou documento XML válido que utiliza um esquema XML customizado |
Conforme descrito na seguinte tabela, quando você cria o serviço da Web, é necessário fornecer os seguintes arquivos:
- Para ativar a transformação XML, é necessário fornecer o serviço da Web apenas com
um arquivo XSL que mapeia o esquema XML customizado para o esquema padrão. Você não precisa fornecer uma cópia do esquema XML customizado.
- Para ativar a transformação para um formato que não seja XML, é necessário fornecer um arquivo XSL
que mapeia o esquema XML customizado para o formato que não seja XML.
Tabela 6. Arquivos que Você Deve Fornecer para o Serviço da WebTransformação XSL
da mensagem de entrada |
Transformação XSL
da mensagem de saída |
Esquema XML customizado (arquivo XSD) |
Arquivo XSL |
Esquema XML customizado (arquivo XSD) |
Arquivo XSL |
|
|
|
X |