Tags
Neste Post vou explicar como podemos inserir valores em uma sequence no BPEL.
Faremos um processo de Insert usando o DBAdapter e adicionaremos no Transformation uma função para configurar a sequence que deverá já estar criada no Banco de Dados.
Nosso primeiro passo é ter criado em nosso banco de dados um SEQUENCE, para isso executei o comando abaixo para cria-la.
CREATE SEQUENCE EMPLOYEE_SEQ
START WITH 1
INCREMENT BY 1;
Essa SEQUENCE usaremos para a tabela EMPLOYEE onde teremos o campo EMPNO que será o numero de empregado e o campo preenchido pela nossa sequence.
Como neste Post nosso foco será a configuração da SEQUENCE pularei alguns passos da criação do nosso DBAdapter, mas caso tenha alguma duvida de como criar um clique aqui e veja o passo a passo para a criação de um.
Crie um projeto chamado SequenceBpel
Crie agora um DataBase Adapter com o nome InsertEmployeeDbAdapter
Escolha somente a opção Insert Only
Importe a tabela EMPLOYEE
Remova qualquer relacionamento que para este exemplo não será necessário.
Finalizando nosso DbAdapter então teremos a seguinte tela:
Vamos agora fazer uma pequena “gambiarra” apenas para que seja criado um WSDL para expormos nosso serviço.
Criaremos um BPEL e posteriormente substituiremos ele por um MEDIATOR.
Arraste então um processo BPEL com as informações abaixo:
Feito isso, teremos a seguinte tela:
Vá agora na pasta XSD do seu projeto e abra o arquivo SequenceBPELProcess.xsd
Edite seu XSD para que ele tenha os parâmetros de entrada necessários para inserirmos em nossa tabela EMPLOYEE, então deverá ficar conforme abaixo:
Agora exclua seu BPEL e Arraste um MEDIATOR com as especificações conforme imagem abaixo:
Ligue então o seu MEDIATOR ao seu WSDL e a outra ponta ao seu DBAdapter e deverá ficar conforme abaixo:
Abra agora nosso MEDIATOR e clique no ícone conforme imagem abaixo:
Abaixo clique em Create New Mapper File para que ele crie nosso Transformation e em seguida clique em OK.
Abra o seu Transformation e na guia General ao seu lado direito da tela escreva sequence conforme abaixo:
Arraste então este componente para que fique entre o transformation:
Dê um duplo clique sobre este componente e na tela a seguir preencha com o nome da sua sequence e o nome do JNDI do seu datasource:
Obs: Coloque o nome da sua SEQUENCE e o nome do seu JNDI com ASPAS DUPLAS
Feito isso ligue agora o componente com o campo empno referente a sua tabela:
Ligue agora os demais campos:
Pronto.. agora é só realizar o deploy do Projeto e testar.
Veja abaixo os meus parâmetros de entrada:
Veja abaixo o resultado na tabela:
Lembrando que a cada execução do payload acima onde insiro as informações irá ser gerado automaticamente mais uma linha no banco de dados incrementando o código do campo EMPNO
Duvidas ? Deixe seu comentário e faça download deste Projeto
Abraços e até a Próxima
/:-D