Iniciando com Oracle Service Bus

Vamos criar um projeto para conhecermos o Oracle Service Bus. Para a instalação, consulte o link: http://www.thiagovespa.com.br/blog/2011/01/27/oracle-service-bus/

Primeiro criaremos o projeto no Eclipse. Vá em File, New, Others e depois selecione a opção Oracle Service Bus, então selecione Oracle Service Bus Project.

Selecione Next, depois escolha um nome para seu projeto e clique em finish.

Dentro do projeto de OSB crie três pastas: WSDL, PROXY, BUSINESS isso ajudará na organização do seu projeto.

Na pasta WSDL coloque os arquivos WSDL do seu projeto. Crie um Business Service a partir de um serviço. No meu caso estou usando algo bem simples um projeto de Soma, somente para exemplificar.

Publique o projeto SomaProjeto, e após isso, vamos consumir o serviço chamado ServicoSomaService. Para consumir o serviço vá até o weblogic console, depois no menu Implantações expanda o projeto _auto_generated_ear_ e você verá o serviço SomaProjeto, clique nele, vá na aba Teste expanda o ServicoSomaService e selecione o item ?WSDL , copie a url exemplo: http://localhost:7001/SomaProjeto/ServicoSomaService?WSDL

Pronto agora selecione o WSDL WebService, clique em Browser depois clique em consume, no campo Service Resources selecione uri e cole o caminho do Webservice. Veja na Imagem abaixo:

Clique em ok. Agora iremos selecionar o Port que é o ServicoSomaPort. Selecione e clique em ok depois talvez apareça outra janela clique em Yes.

Agora criaremos o Proxy.
Selecione a pasta Proxy depois clique com o botão direito selecione New - Proxy Service, coloque um nome e clique em Finish.

Selecione WSDL Web Service e clique em Browser, abra o OSB Configuration expanda Conhecendo_OSB_ expanda também a pasta WSDL e selecione o WSDL ServicoSomaService?WSDL.wsdl, expanda também o ChamarSoma e selecione o Port ServicoSomaPort
Veja na imagem abaixo:


Agora vamos fazer alguns tratamentos no Message Flow como exemplo. Primeiro coloquei uma Rota depois inseri um If-Else para analisar o que estava entrando como valor na variável x.
Se for um número negativo, na chamada do serviço pego e lanço uma exceção e depois faço um Reply que ocorreu uma falha. Senão chamo o serviço normalmente e depois na resposta faço uma multiplicação por 2, só para exemplificar o que pode ser feito. Veja na figura abaixo:

Como é o próprio serviço que é utilizado no proxy e também é utilizado para realizar a soma, não precisamos uma transformação no Replace.

Abaixo os links dos projetos:

download

É isso ai t+. Visitem o meu blog em: http://cassiosousa.wordpress.com