Criando serviços com o WSO2 – Parte 3 – WSO2 ESB

Hoje vamos finalizar o processo para criar um serviço com as ferramenta do WSO2, a última parte vamos publicar nosso serviço na BUS, dessa forma disponibilizando o serviço para nossos clientes.

No WSO2 ESB vamos criar um proxy service que será responsável por chamar nosso serviço Bussiness Service (WSO2 WSAS) que por sua vez vai chamar o nosso Data Service (WSO2 DS), essa parte é basicamente configuração não vamos codificar nenhuma linha de código.

Para expor nosso serviço na BUS vamos seguir os seguintes passos:

1) Criar uma Sequence

Um elemento de seqüência é usado para definir uma seqüência de mediadores que podem ser chamados mais tarde, nesse exemplo vamos criar uma sequence com um mediator de Log.

Entre na página de administração do ESB, selecione a opção Sequences.

Clique na opção Add Sequence

Na tela Design Sequence, coloque o nome da sequence como RecursoHumanoSequence e agora vamos adicionar a sequência que vai ser executada, em nosso exemplo temos somente um Log, para isso clique em Add Child -> Core -> Log

Depois de configurado a sequence, clique em Save, nossa sequence será listada na tela Mediation Sequences

2) Criar um EndPoint

Um EndPoint é um destino específico de uma mensagem, também podemos ativar as estatísticas de endpoints e WSDL dos endereços.

Atenção: Para adicionar um Endpoint, vamos precisar acessar o WSAS para recuperar o endereço do Endpoint do nosso serviço, na página de administração do WSAS entre em List e no serviço RecursoHumanoServico clique na opção WSDL1.1

O browser será aberto com o WSDL do serviço, no final está as configurações do Endpoint, copie esse endereço para que possamos colar na tela de criação do Endpoint na ESB.

Agora vamos voltar ao administrador da ESB, clique na opção Endpoints

Na nova tela, clique em Address Endpoint

Adicione um nome RecursoHumanoEndPoint e coloque o endereço do Endpoint que recuperamos no WSAS, clique no botão Test para verificar a comunicação entre a ESB e o WSAS

Clique em Save

Veja nosso Endpoint na listagem

3) Criar o Proxy

Clique na opção Add -> Proxy Service

Temos várias opções para criar proxy, clique na opção Custom Proxy

Vamos configurar nosso proxy da sequinte maneira

  • Proxy Service Name: RecursoHumanoServico
  • Publishing WSDL: Specify source URL
  • WSDL URI: Coloque o endereço do WSDL do WSAS, aonde verificamos anteriormente

Depois clique em Next

Nessa tela vamos configurar a Sequence e o Endpoint que ja criamos anteriormente.

  • In Sequence Options: Selecione Import e na combo selecione a Sequence criada anteriormente
  • Endpoint Options: Selecione Import e na combo selecione o Endpoint criado anteriormente

Depois clique em Next

Nessa tela não alteramos nada, deixe as duas opções marcadas None, e clique em Finish

Veja na listagem no nosso proxy criado.

4) Testando o serviço

Para testar o serviço clique em Try this service, preencha o campo nome e clique no botão.

Quando clicamos no botão fazemos o seguinte caminho:

  1. A BUS recebe a requisição
  2. Encaminha para o WSAS
  3. Valida os dados
  4. Chama o DS
  5. Retorna os dados para o WSAS
  6. Executa regra de negócio
  7. Retorna os dados para a BUS

Vamos testar a Exception, não coloque nenhum valor para o parâmetro nome e clique no botão

Nesse caso fizemos o seguinte caminho:

  1. A BUS recebe a requisição
  2. Encaminha para o WSAS
  3. Valida os dados
  4. Retorna erro para a BUS

Chegamos ao fim desse peque How To de como criar um serviço usando as ferramenta do WSO2, espero que possa ter esclarecido as dúvidas. Se ainda tiverem alguma dúvida ou  alguma sugestão, critica favor entre em contato!

Um Abraço!!

Sobre Leandro Prado

Leandro Silveira Prado é Premier Field Engineer na Microsoft especializado em Application Lifecycle Management.