Configurando uma Conexão JDBC Tipo 4 para Transações Globalmente Coordenadas

Se desejar que o banco de dados que você acessa pela conexão JDBC tipo 4 participe de transações globalmente coordenadas, configure o ambiente adequado.

Antes de Começar

Configure sua definição de provedor JDBC

Sobre esta tarefa

Em sistemas distribuídos, um gerenciador de filas do ` IBM® MQ ` associado ao nó de integração desempenha a função de gerenciador de transações, o que significa que o ` IBM App Connect Enterprise ` precisa acessar o ` IBM MQ ` ao processar mensagens. Para obter mais informações sobre como usar o IBM MQ com o IBM App Connect Enterprise, consulte a seção “Instalando o IBM MQ ”.

As atualizações feitas em um banco de dados em uma conexão JDBC tipo 4 podem ser coordenadas com outras ações tomadas dentro do fluxo de mensagens, caso você configure os recursos para suportar coordenação.

Conclua as etapas a seguir:

Procedimento

  1. Verifique se a definição de sua política de provedores JDBC está adequada para transações coordenadas.

    Por exemplo, para configurar as classes JDBC necessárias:

    • Para Db2®, defina JDBC type 4 data source class name como com.ibm.db2.jcc.DB2XADataSource e JDBC driver class name como com.ibm.db2.jcc.DB2Driver.
    • Para o Oracle, configure JDBC type 4 data source class name como oracle.jdbc.xa.client.OracleXADataSource e JDBC driver class name como oracle.jdbc.OracleDriver.
    Consulte o administrador de seu banco de dados ou a documentação fornecida pelo fornecedor do banco de dados para confirmar se todas as propriedades da política de provedores JDBC estão configuradas adequadamente. Por exemplo, o fornecedor de banco de dados pode requerer acesso se estiver participando de transações coordenadas.
  2. Defina o arquivo do comutador e as propriedades do banco de dados:
    1. O arquivo de switch do ` JDBC ` é fornecido por ` IBM App Connect Enterprise ` e utiliza o registro estático ` XA ` (consulte Configurando bancos de dados para a coordenação global de transações ).
    2. Plataforma LinuxEm Linux® e UNIX , abra o arquivo qm.ini para o gerenciador de fila do nó de integração com um editor de texto Inclua a seguinte sub-rotina para cada banco de dados:
      XAResourceManager:
             Name=Database_Name 
             SwitchFile=JDBCSwitch
             XAOpenString=JDBC_DataSource
             ThreadOfControl=THREAD 
      

      Database_Name é o nome do banco de dados (DSN) definido para a política de provedores JDBC.

      JDBCSwitch é um nome genérico fixo que representa o arquivo do comutador para coordenação de XA. Utilize este vaor ou outro valor fixo único em cada sub-rotina; o arquivo do comutador específico utilizado pelo gerenciador de filas é definido pelos links simbólicos criados na próxima etapa.

      JDBC_DataSource é o identificador da política de provedores JDBC.

      Defina uma estrofe para cada banco de dados (DSN) que você conecta a partir deste servidor de integração. É necessário criar definições separadas mesmo se os DSNs resolverem para o mesmo banco de dados físico. Portanto, deve-se ter uma sub-rotina para cada política de provedores JDBC definida, pois cada serviço pode definir as propriedades para um único banco de dados.

    3. Plataforma WindowsNo Windows, abra o Explorador d IBM MQ s e selecione o gerenciador de filas, por exemplo, BROKERQM.

      Abra a página Gerenciador de Recursos XA e modifique os atributos para criar a definição do banco de dados. Os atributos são os mesmos apresentados para o ` Linux ` e o UNIX : `Name `, `SwitchFile `, `XAOpenString ` e ` ThreadofControl `. Deixe o atributo adicional, XACloseString, em branco.

      Digite JDBCSwitch em SwitchFile.

  3. Configure o acesso do gerenciador de filas para o arquivo do comutador:
    1. Plataforma LinuxNos sistemas Linux e UNIX , crie um link simbólico para os arquivos de comutador que são fornecidos em seu diretório install_dir/server/lib .

      install_dir é o diretório no qual você instalou o IBM App Connect Enterprise. O local padrão para este diretório é install_dir/ace-13.0.n.0/server no Linux , ou /opt/IBM/mqsi/13.0.n.0/server em sistemas UNIX. O diretório padrão inclui a versão, a liberação, a modificação e a correção do produto, no formato v.r.m.f (versão.liberação.modificação.correção).

      Configure links no diretório /var/mqm/exits64. O nome do arquivo para todas as plataformas é libJDBCSwitch.so.

      Especifique o mesmo nome do arquivo comutador, JDBCSwitch, ou seu próprio valor, no diretório /exits64. Por exemplo, em AIX®:
      ln -s install_dir/server/lib/libJDBCSwitch.so /var/mqm/exits64/JDBCSwitch
    2. Plataforma WindowsNo Windows, copie o JDBCSwitch32.dll arquivo do install_dir\server\bin diretório para o \exits subdiretório no diretório de instalação do IBM MQ e renomeie o arquivo para JDBCSwitch.dll. Em seguida, copie o JDBCSwitch.dll arquivo do install_dir\server\bin diretório para o \exits64 subdiretório no diretório de instalação do IBM MQ.
  4. Configure o fluxo de mensagens que inclui um ou mais nós que acessam os bancos de dados que devem participar de uma transação globalmente coordenada.
    1. Abra uma sessão do Kit de Ferramentas do IBM App Connect Enterprise.
    2. Alternar para a Perspectiva de Desenvolvimento de Integração.
    3. Adicione o fluxo de mensagens que inclui o nó ou nós que conectam ao banco de dados que deve participar de uma transação globalmente coordenada para um arquivo BAR novo ou existente.
    4. Construa o arquivo BAR.
    5. Clique na guia Configurar , selecione o fluxo de mensagens que você adicionou e selecione a caixa de seleção Transação Coordenada .

O que fazer em seguida

Se o seu nó de integração estiver em execução no Windows, autorize o gerenciador de filas a acessar recursos que estão associados à política de Provedores JDBC (consulte Autorizando o acesso a recursos JDBCProvider JDBC tipo 4 no Windows).

Se você estiver seguindo as instruções em Trabalhando com bancos de dadosa próxima tarefa é Configurando conexões ODBC para transações coordenadas globalmente (opcional).