Os componentes de mediação operam em fluxos de mensagens entre os componentes de serviços.
Os recursos de um componente de mediação são implementados por primitivas de mediação, as quais executam os tipos de implementação de serviços padrão.
Um componente de mediação tem um ou mais fluxos; por exemplo, um para pedido e um para resposta.
O WebSphere ESB oferece suporte a um conjunto de primitivas de mediação fornecidas e que implementam os recursos de mediação padrão de módulos de mediação implementados no WebSphere ESB. Se você precisar de recursos de mediação especiais, poderá desenvolver suas próprias primitivas de mediação personalizadas.
Uma primitiva de mediação define uma operação de "entrada" que processa ou manipula mensagens que são representadas por objetos de mensagem de serviço. Uma primitiva de mediação também pode definir operações de "saída" que enviam mensagens a outro componente ou módulo.

Normalmente as primitivas de mediação funcionam no nível de uma operação simples, com possível mediação do pedido (entrada) e da resposta (saída). Em alguns casos, é possível especificar primitivas de mediação no nível inferior de um parâmetro simples em uma operação; por exemplo, os seletores podem operar no nível da operação ou do parâmetro.
Você pode utilizar o WebSphere Integration Developer para modelar e montar, no modo gráfico, os componentes de mediação a partir de primitivas de mediação, e montar módulos de mediação a partir de componentes de mediação.
O
WebSphere ESB oferece suporte ao seguinte conjunto de primitivas de mediação:
- Mediação Personalizada
- Executa a lógica personalizada. A primitiva de Mediação Personalizada pode chamar um componente SCA (Service Component Architecture) externo, fornecido por você.
- A operação que é chamada deve ser uma operação bidirecional.
- O componente SCA de destino deve existir no mesmo módulo de mediação que a primitiva de Mediação Personalizada.
- Consulta ao Banco de Dados
- Modifica as mensagens utilizando informações de um banco de dados fornecido pelo usuário.
- É necessário definir um banco de dados, uma origem de dados e qualquer configuração de autenticação de servidor que serão utilizados pela primitiva de mediação Consulta ao Banco de Dados.
- A primitiva de mediação Consulta ao Banco de Dados pode ler apenas a partir de uma tabela.
- A coluna-chave especificada deve conter um valor exclusivo.
- Os dados nas colunas de valores devem ser primitivas Java ou Cadeias Java (ou devem estar aptos a atuar como uma primitiva Java ou uma Cadeia Java).
- Falha
- Gera uma falha no fluxo.
- Filtro de Mensagens
- Roteia as mensagens para diferentes caminhos inferiores, com base no conteúdo da mensagem.
- Registrador de Mensagem
- Registra as mensagens em um banco de dados. As mensagens são armazenadas como XML; portanto, os dados podem ser processados posteriormente por aplicativos compatíveis com XML.
- O esquema do banco de dados é definido pela IBM.
- A instalação padrão do WebSphere ESB cria uma origem de dados e um banco de dados Cloudscape. Por padrão, o WebSphere Integration Developer configura as primitivas de mediação Registrador de Mensagem para utilizar o banco de dados Cloudscape.
- Caso queira criar seu próprio banco de dados e origem de dados utilizando o console administrativo, o WebSphere ESB fornece arquivos ddl (data definition language) que descrevem o esquema da tabela. Os arquivos Table.ddl ficam armazenados em: install_root/util/EsbLoggerMediation/database_
type/Table.ddl. Em que database_ type refere-se ao tipo de banco de dados, como por exemplo, CLOUDSCAPE_V50. Se você criar seu próprio banco de dados e desejar utilizar o nome JNDI padrão para a origem de dados, será necessário remover a origem de dados padrão.
- Parar
- Pára um caminho específico no fluxo, sem gerar uma exceção.
- XSLT
- Transforma as mensagens.
- A primitiva de mediação XSLT pode alterar os cabeçalhos ou o corpo das mensagens.
- As mensagens podem ser transformadas, utilizando uma transformação XSLT (Extensible Stylesheet Transformations) 1.0. A transformação opera em uma serialização XML da mensagem.