Link de parceiro
Consulte também
No contexto de BPEL, os links de parceiro descrevem interação entre um processo BPEL e os serviços Web externos. A atividade Link de parceiro define que função cada parceiro desempenha na troca de mensagens interativas. Indiretamente, em virtude das referências a um tipo de link de parceiro, uma atividade Link de parceiro indica quais tipos de porta são implementados por cada parceiro.
Elementos link de parceiro e definições de tipos de link de parceiro
O tipo de link de parceiro é uma extensão BPEL do WSDL. Como tal, é definida em um arquivo WSDL, não em um arquivo BPEL. O tipo de link de parceiro cria um associação entre uma ou duas funções arbitrárias e indica que cada função deve implementar um único tipo de porta. Ao associar um tipo de porta a uma função, o tipo de link de parceiro define as regras de interação entre os parceiros.
Não confunda elementos Link de parceiro e definições de tipo de link de parceiro:
- Os tipos de link de parceiros e as funções são extensões BPEL, que são definidas nos arquivos WSDL.
- Os elementos Link de parceiro são elementos BPEL 2.0. São definidos no arquivo do processo BPEL. Os elementos Link de parceiro fazem referência aos atributos de tipo de link de parceiro.
As definições de tipo de link de parceiro são pré-requisitos para o elemento Link de parceiro. Um elemento Link de parceiro pode ser definido somente com referência a um determinado tipo de link de parceiro e função que devem ser definidos no arquivo WSDL.
Formas de adicionar um link de parceiro
Você pode adicionar um link de parceiro a um processo comercial de uma das seguintes formas:
- Arrastar o elemento Link de parceiro da Paleta para o diagrama.
- Arrastar um arquivo WSDL do mesmo projeto na janela Projetos para o diagrama.
- Arrastar um arquivo WSDL de outro projeto na janela Projetos para o diagrama. O IDE recupera automaticamente o arquivo WSDL de outro projeto e copia os arquivos relacionados no diretório Parceiro da estrutura do projeto.
- Arrastar um nó de serviço Web de um projeto EJB ou projeto de aplicação Web na janela Projetos para o diagrama
- Ao arrastar um nó de serviço Web, o BPEL Designer recupera o arquivo WSDL do servidor da aplicação. Para que a recuperação do arquivo WSDL seja bem-sucedida, o servidor da aplicação e o projeto de serviço Web devem estar implantados.
Usando um elemento Link de parceiro
Para usar o elemento Link de parceiro:
- Na visualização Design, adicione um elemento Link de parceiro ao diagrama usando um dos métodos abaixo.
É exibida a caixa de diálogo Editor de propriedades do link de parceiro.
- Na caixa de diálogo Editor de propriedades, especifique o seguinte:
- Nome. Aceite o nome padrão ou insira um nome arbitrário. O nome deve ser exclusivo desse processo.
- Arquivo WSDL. Selecione o arquivo WSDL que descreve o serviço externo associado ao Link de parceiro.
O arquivo WSDL pode ser pré-selecionado se tiver adicionado o elemento Link de parceiro arrastando um arquivo WSDL para o diagrama.
- Selecione uma das opções seguintes para especificar o tipo de link de parceiro:
- Usar tipo de link de parceiro existente. Se desejar usar as definições de tipo de link de parceiro existentes no arquivo WSDL especificado, selecione este botão de opção e siga o procedimento para tipos de link de parceiro existentes abaixo.
- Usar um tipo de link de parceiro recém-criado. Se desejar criar uma nova definição de tipo de link de parceiro no arquivo WSDL e usá-la dentro do elemento Link de parceiro, selecione esta opção e siga o procedimento para novos tipos de link de parceiro conforme descrito abaixo.
Para usar o tipo de link de parceiro existente:
- Selecione a opção Usar tipo de link de parceiro existente e selecione o tipo de link de parceiro na lista suspensa. Os campos Minha função e/ou Função do parceiro são preenchidos automaticamente.
- Clique em OK.
O IDE modifica o arquivo BPEL com os valores fornecidos por você.
- Para trocar as funções do processo comercial (Minha função) e do parceiro (Função do parceiro), clique no botão Trocar funções.
Para adicionar um tipo de link de parceiro a um arquivo WSDL e configurar o elemento Link de parceiro a fim de que o utilize:
- Selecione a opção Usar um tipo de link de parceiro recém-criado.
- Especifique o arquivo WSDL ao qual adicionar um tipo de link de parceiro. Você pode adotar um dos seguintes procedimentos:
- Adicione o tipo de link de parceiro ao arquivo WSDL do empacotador, conforme sugerido pelo IDE no campo Criar no arquivo por padrão. Se você escolher essa opção, o IDE criará automaticamente o arquivo WSDL do empacotador na estrutura do projeto. O arquivo WSDL original será importado para o arquivo WSDL recém-criado do empacotador.
- Você pode usar os arquivos WSDL do empacotador quando o arquivo WSDL original for somente leitura ou quando não quiser modificar o arquivo WSDL original.
- Adicione o tipo de link de parceiro a um arquivo WSDL em seu projeto. Clique em Procurar e localize o arquivo WSDL ao qual adicionar o tipo de link de parceiro.
- Especifique o nome do tipo de link de parceiro.
- Especifique a função do processo comercial (Minha função) e/ou do parceiro (Função do parceiro) conforme descrito a seguir:
- Marque a caixa de seleção que corresponda à função que deseja definir.
- Especifique o nome da função no campo Nome da função.
- Selecione o tipo de porta na lista suspensa.
- Clique em OK.
O IDE adiciona uma nova definição de tipo de link de parceiro ao arquivo WSDL e modifica o arquivo BPEL com os valores fornecidos por você.
- Observe que pelo menos uma das funções deve ser definida ou o link de parceiro não será configurado corretamente.
Endereçamento dinâmico
Às vezes é necessário se comunicar com os serviços do parceiro, cujos pontos finais não são conhecidos antecipadamente ou é necessário alterar uma referência do ponto final (EPR) durante a execução do processo. O recurso Links dinâmicos de parceiro possibilita que uma referência do ponto final seja atribuída dinamicamente ao link de parceiro. Isso significa que você pode usar um link de parceiro para comunicação com vários serviços Web, desde que esses serviços tenham a mesma interface.
Cada link de parceiro tem informações abstratas e concretas definidas. Enquanto as informações abstratas que descrevem a interface de serviços Web deveriam ser estáticas, as informações concretas de acesso, como endereço e porta, podem ser descobertas e usadas dinamicamente.
Observação: Para implantação bem sucedida do processo, um link de parceiro deverá ser totalmente definido. Isso significa que quando você implanta o projeto, o arquivo WSDL para o link de parceiro deverá conter tanto as informações abstratas quanto as concretas para o link definido de parceiro, incluindo endereço e porta, embora, posteriormente, as informações concretas possam ser alteradas independentemente do arquivo WSDL.
Observação: A especificação BPEL estipula que somente a EPR do parceiro pode ser alterada dinamicamente. Em termos de BPEL, somente o partnerRole de um elemento partnerLink pode ter um novo valor atribuído. O valor myRole não muda depois do BPEL ter sido implementado.
Para atribuir uma nova EPR a um link de parceiro, você pode usar a atividade padrão Atribuir e o mapeador BPEL.
A informação de EPR pode ser fornecida em diversos modos:
- você pode fornecê-la como um literal (insira manualmente as informações de referência do ponto final em um literal) e mapeá-la para o link de parceiro
- usar uma mensagem de entrada para extrair o endereço do ponto final
- usar uma variável de tipo de Referência do serviço
Se você usar uma mensagem de entrada, um esquema de EPR deverá ser definido como parte da mensagem em WSDL. Para atribuir a EPR a um link de parceiro, use a variável de mensagem.
Para atribuir uma nova referência do ponto final a um link de parceiro a partir de uma variável:
- Crie uma nova atividade Atribuir no processo.
- Abra o mapeador BPEL
- Na árvore de destino à direita, localize o link de parceiro ao qual você deseja entregar uma nova parte concreta.
- Na árvore de código-fonte, localize uma variável que contenha o novo endereço do ponto final
O endereço do serviço na Web pode ser definido em termos de esquemas diferentes e o contêiner JBI requer um tipo especial de dados chamado ServiceRefType que é um simples empacotador para qualquer tipo de dado que descreve o ponto final.
Para empacotar seus dados:
- Na barra de ferramentas do mapeador, escolha BPEL > Empacotar com referência do serviço.
Essa função é uma função doXslTranform que usa uma folha predefinida estilo XSL.
-
Arraste uma conexão de entrada para a função a partir da sua variável. Então, arraste uma conexão de saída para o link de parceiro.
- Uma nova parte concreta é atribuída ao link de parceiro.
- Consulte também
- Receber
- Responder
- Chamar
- Adicionando importações de WSDL e de esquema XML
- Sobre o editor WSDL
- Paleta do BPEL Designer: serviço Web
- Sobre a visualização Design do BPEL Designer
Notificações legais