Imagine que você recebe a tarefa de disponibilizar para um parceiro de negócios, cliente ou mesmo fornecedor, um Web Service que ofereça a capacidade de buscar seus produtos em sua base de dados corporativa. Mas você possui apenas uma hora para fazer isso, e a única coisa que você possui pronta é a base de dados contendo os produtos. A equipe de infra-estrutura aguarda que em uma hora você tenha este Web Service pronto e funcional para que eles possam somente disponibilizar no servidor da Web exposto fora do firewall. Você deve implementar os seguintes requisitos funcionais e não-funcionais:- Busca de um determinado produto na base de dados, dado o código de identificação (chave primária) deste produto
- Exibição uma mensagem descritiva de falha caso o produto não seja encontrado no Banco de Dados
- Exibição uma mensagem descritiva de erro caso ocorra uma falha de comunicação com o Banco de Dados
- Conectividade com o servidor de banco de dados MySQL 5.1, suporte a transações XA e mecanismo de fail-over para JDBC
- Expor este Web Service numa porta específica do servidor de aplicações que irá hospedar o Web Service (Ex: Porta 5555)
Este é o tipo de cenário que o Sonic ESB visa resolver. Através do Sonic ESB, você pode criar e manter processos de integração complexos como este, como o mínimo de esforço, sem ter que perder tempo com cansativas e errôneas horas de escrita de código em Java, C#, Ruby ou mesmo XML, além de poder garantir os requisitos funcionais e não-funcionais através de cenários de testes integrados e de regressão.
Para mostrar como isso pode ser feito, criei cinco vídeos que mostram passo à passo, a criação deste mesmo cenário, e a fim de suprir as expectativas, o cenário é criado e testado em apenas 48 minutos, menos de uma hora. Desafiador concorda? Pegue seu cronômetro e veja como isso é possível nos vídeos abaixo.
Parte 1 - Definição de um Modelo de Dados Canônico e dos Tipos Complexos
Parte 2 - Implementação da Lógica Inicial do Web Service
Parte 3 - Implementando á Consulta do Produto no Banco de Dados MySQL
Parte 4 - Tratando à Exceção "Produto não Encontrado" usando Faults
Parte 5 - Tratanto o Erro "Falha de Comunicação com o Banco de Dados"

3 comentários:
Só a título de curiosidade pessoal, para criação e edição dos vídeos, tive que fazer de uma forma mais devagar para que pudesse ser o mais didático possível. Se eu fosse fazer de uma maneira mais natural e sem restrições de ter que apresentar para alguem, faria sem muito esforço em apenas 20 minutos :D
Show de bola este Sonic ESB!
Muito boa a iniciativa
Postar um comentário