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:
É isso ai t+. Visitem o meu blog em: http://cassiosousa.wordpress.com
]]>Clique em New Application, coloque um nome para o projeto, selecione Generic Application e clique em next.
Na caixa Avaliable selecione ADF Faces em clique no Add(ALT+D) veja:
Coloque um nome em seu projeto, clique em next se quiser alterar o nome padrão do primeiro pacote. Senão clique em Finish.
Crie uma nova página JSF.
Adicione à página que acabou de criar um componente af:inputText veja:
Com o botão direito clique sobre o inputText
Vá em Insert inside input text e clique em ADF Faces.![]()
Na Janela que se abriu selecione Auto Suggest Behavior e clique em ok.
Aparecera a seguinte tela, para você setar o conjunto de itens que irá conter essa sugestão.
![]()
Bom ainda não criamos nenhum bean para esse projeto, teremos que criar agora vejamos:
Clique na seta para baixo na tela acima, aparecerá uma nova janela, clique em Edit.
Aparecerá outra janela em Managed Bean clique no botão New…
Crie seu Managed Bean.
Em Method clique em New… e de um nome para o método.
Ufaa =D
Veja:
Agora clique em OK e depois OK novamente.
Para demonstração vou colocar alguns itens fixo. Veja a implementação do nosso método.
1: /**
2: *
3: * @param parâmetro contém o texto passado pelo value no nosso input text
4: * @return
5: */
6: public List autoSugestao(String parametro) {
7: //array de nomes para o exemplo
8: String[] itensNomes = {"Abreu","Gonçalves","Junior","Alexandre","Andrade"};
9:
10: //Criando uma lista de SelectItem para o retorno que serão associados ao suggest
11: List<SelectItem> listNomesEncontrados = new ArrayList<SelectItem>();
12: for (String s : itensNomes) {
13: if(s.startsWith(parametro) || s.endsWith(parametro))
14: listNomesEncontrados.add(new SelectItem(s));
15: }
16: return listNomesEncontrados;
17: }
Muito simples não =), veja o exemplo, abaixo funcionando.
![]()
É isso ai pessoal fica a dica. e bons códigos.
Download do projeto.
Obrigado!
]]>Nesta Página insira um componente popup, dentro do popup insira um componente Dialog, para termos os botões ok e cancel por default.Set a propriedade contentDelivery como lazy assim garantimos um “refresh” nos componentes.
Insira também um componente OutputText, para vermos as modificações.
Agora criaremos um ManagedBean para a nossa aplicação, insira também um botão ou qualquer outro componente que gere um evento na página jsp. Defina sua propriedade PartialSubmit como true veja
Crie um Action para o botão e defina como corpo do método como abaixo
1: public String actionChamaPopup() {
2: FacesContext context = FacesContext.getCurrentInstance();
3:
4: StringBuilder script = new StringBuilder();
5: script.append("var popup = AdfPage.PAGE.findComponent('").append("popID").append("'); ").append("if (!popup.isPopupVisible()) { ").append("var hints = {}; \n" +
6: " hints[AdfRichPopup.HINT_ALIGN] = AdfRichPopup.ALIGN_AFTER_START;\n" +
7: " hints[AdfRichPopup.HINT_ALIGN_ID] = 'botaoID';\n ").append("popup.show(hints);}");
8: ExtendedRenderKitService erks =
9: Service.getService(context.getRenderKit(),
10: ExtendedRenderKitService.class);
11: erks.addScript(context, script.toString());
12: setTexto("Exemplo");
13: return null;
14: }
Neste método você descreve o script para chamar a popup, define o alinhamento, e quem a popup deve pegar como base para se alinhar
Posições de alinhamento
ALIGN_AFTER_START
ALIGN_AFTER_END
ALIGN_BEFORE_START
ALIGN_BEFORE_END
ALIGN_END_AFTER
ALIGN_END_BEFORE
ALIGN_START_AFTER
ALIGN_START_BEFORE
Agora o projeto em execução
Abaixo está o fonte do projeto, divirta-se 
Download do projeto.
]]>