Cenários de utilização do WSIF
Há dois cenários principais que ilustram a função reproduzida pelo WSIF no ambiente emergente de serviços da Web: Redesenvolvimento e reimplementação e composição de fluxo de serviço.
Cenário: Renovar o Desenvolvimento e Reimplementação
Quando você implementa um serviço da Web pela primeira vez, cria um protótipo simples. Quando você deseja mover um protótipo de serviço da Web para produção, muitas vezes é necessário desenvolvê-lo e implementá-lo novamente.
- Poderá reimplementar e reimplantar seus serviços sem alterar o código do cliente.
- É possível usar infraestruturas confiáveis e de alto desempenho existentes, como Chamada de Método Remoto sobre Internet Inter-ORB Protocol (RMI-IIOP) e Java™ Message Service (JMS) sem sacrificar a independência de local que o modelo de serviço da Web oferece.
Cenário: Composição do Fluxo de Serviço
Em geral, um fluxo de serviço chama um serviço da Web e, em seguida, passa a resposta de um serviço da Web para o próximo serviço da Web, talvez executando alguma transformação no meio.
Existem dois aspectos-chave nesse fluxo que o WSIF fornece:
- Uma representação da chamada de serviço baseada nos metadados em um Web Services Description Language (WSDL).
- A capacidade de construir chamadas com base somente no portType, que pode portanto ser utilizado em qualquer implementação.
Por exemplo, imagine que você construa um meta-serviço que utilize vários serviços para construir um processo. Inicialmente, diversos desses serviços são protótipos de bean Java simples escritos e exibidos por meio do SOAP, mas você planeja reimplementar alguns deles como componentes EJB e terceirizar outros.
Se você usar SOAP, ele prenderá vários encadeamentos para toda chamada adiante, porque eles passam pelo servidor da Web e o mecanismo de servlet e no roteador SOAP. Se você utilizar WSIF para chamar os beans diretamente, obterá um desempenho muito melhor comparado a SOAP e não perderá a transparência de acesso ou de localização. Utilizando WSIF, é possível substituir as implementações de bean Java por implementações EJB sem alterar o código do cliente. Para mover alguns dos serviços da Web de implementações locais para serviços SOAP externos, apenas atualize o WSDL.