Resolvendo problemas ao desenvolver fluxos de mensagens com nós WebSphere Adapters

Conselhos para lidar com problemas comuns que podem surgir quando você desenvolve fluxos de mensagens que contêm nós WebSphere® Adapters do WebSphere ®.

Sobre esta tarefa

nós do WebSphere Adapters

Mensagens de erro BIP3414 e BIP3450 são emitidas quando você implementa um nó de entrada WebSphere Adapters

Procedimento

  • Cenário: Quando você implanta um fluxo de mensagens que contém um nó SiebelInput , é emitida a mensagem de erro BIP3414 .
  • Explicação: As mensagens de erro explicam que o nó SiebelInput não pôde registrar-se com o componente adaptador para receber eventos.
    Esse problema pode ser causado quando o nó de integração não sabe onde localizar as bibliotecas do cliente para o Siebel Enterprise Information Service (EIS). Você também pode encontrar esse problema se você estiver usando o Adaptador WebSphere para Siebel em um sistema operacional não suportado.
  • Solução: Use os mqsireportproperties comandos mqsichangeproperties e para configurar o nó de integração com a localização das bibliotecas do cliente Siebel, conforme descrito em Preparando o ambiente para nós WebSphere Adapters.

As mensagens de erro são emitidas quando as aulas não podem ser encontradas, ou quando ocorrem problemas com a inicialização Java

Procedimento

  • Cenário: Você está implementando WebSphere Adapters, e são emitidas mensagens de erro que indicam que as classes não podem ser encontradas, ou problemas estão ocorrendo com a inicialização Java™ . As mensagens de erro BIP3521 e BIP3522 também podem ser emitidas.
  • Explicação: Os adaptadores do SAP, Siebel e PeopleSoft precisam de bibliotecas clientes do fabricante do Sistema de Informações Corporativas (EIS). Se essas bibliotecas estiverem faltando, não estiverem instaladas corretamente ou estiverem em um nível incorreto, erros são emitidos.
  • Solução: Para resolver este problema, complete as etapas a seguir.
    1. Certifique-se de que a política do adaptador identifique corretamente a localização das bibliotecas Java e nativas (consulte Propriedades da política ).
    2. Assegure que as bibliotecas estejam instaladas corretamente, sejam válidas para seu sistema operacional e tenham a permissão correta para que o nó de integração possa acessá-las.
    3. Certifique-se de que seu sistema operacional seja compatível com o IBM App Connect Enterprise e com o provedor do EIS. Para obter mais informações sobre os sistemas operacionais compatíveis, acesse o IBM App Connect Enterprise requisitos do sistema site.

Um fluxo de mensagens com um Solicitação SAP, Solicitação Siebel, ou PeopleSoftRequest o nó foi implantado com sucesso, mas a mensagem BIP3540 é emitido indicando que a conexão falhou

Procedimento

  • Cenário: De um Solicitação SAP, Solicitação Siebel, ou PeopleSoftRequest nó, uma exceção é lançada para indicar que o nó não consegue estabelecer uma conexão mesmo que o fluxo de mensagens tenha sido implementado com sucesso. A exceção contém a mensagem BIP3540 com texto inserido que indica que a conexão falhou.
    Por exemplo, para SAP, o texto inserido é:
    Exception in connecting to SAP:Connect to SAP gateway failed 
    Connect_PM GWHOST= invalidhost.test.co, GWSERV=sapgw00, ASHOST= invalidhost.test.co, 
      SYSNR=00
    LOCATION CPIC (TCP/IP) on local host ERROR partner not reached (host
      invalidhost.test.co, service 3300) TIME Mon Dec 01 16:43:52 2008 RELEASE 640 
    COMPONENT NI (network interface) VERSION 37 RC -10 MODULE nixxi_r.cpp LINE 8719 
    DETAIL NiPConnect2 SYSTEM CALL SiPeekPendConn ERRNO 10061 ERRNO TE
    Para PeopleSoft, o texto inserido é:
    001DOWNbea.jolt.ServiceException: Invalid Session 
  • Explicação: Os detalhes da conexão não são verificados quando o fluxo de mensagens é implementado. Para nós de solicitação, a conexão é feita no primeiro uso.
  • Solução: Se você configurou uma política para este adaptador, revise as propriedades de conexão sobre essa política e revise o texto na mensagem BIP3540 para determinar se as propriedades de conexão estão incorretas.

    Se não existir nenhuma política para esse adaptador, revise as propriedades da conexão no adaptador. Se as propriedades estiverem incorretas, corrija-as e reimplemente o adaptador. Como alternativa, crie uma nova política com as propriedades corretas para substituir as propriedades que estão configuradas no adaptador.

Você implementou um adaptador de entrada SAP mas não recebe as mensagens esperadas

Procedimento

  • Cenário: Você implementou um adaptador de entrada SAP mas não recebe as mensagens do IDoc que você esperava receber.
  • Explicação: Se você não recebeu mensagens de IDoc do SAP, é possível que a implementação tenha sido malsucedida ou o servidor SAP não tenha sido iniciado.
  • Solução: Verifique o rastreio do usuário para a mensagem BIP3484 ocorrendo no momento da implementação. O componente adaptador grava informações de diagnóstico para esta mensagem, em uma inserção que começa "CWYAP ...". Se esta mensagem é emitida, ela explica a causa do problema.

Você importou um projeto existente para sua área de trabalho, mas as mensagens são emitidas quando você tenta construir os conjuntos de mensagens do SAP

Procedimento

  • Cenário: Você importou um projeto existente em sua área de trabalho, mas quando você tenta construir um conjunto de mensagens SAP , você vê a mensagem de erro de compilação do conjunto de mensagens BIP0182.
  • Explicação: Este erro ocorre quando você escolhe a opção de "Importar projetos existentes em sua área de trabalho" a partir da caixa de diálogo Importar. Escolhendo esta opção ao importar, é criado um link a partir da área de trabalho para os projetos existentes em um local externo e um arquivo requerido não está disponível para a área de trabalho. Para copiar o projeto inteiro em sua área de trabalho, use a opção para importar o arquivo Project Interchange (PI).
  • Solução: Ao importar um projeto existente do SAP para sua área de trabalho, clique em Arquivo > Importar, expanda a pasta Outros e clique em Intercâmbio de projetos.

Um Erro É Emitido quando Você Utiliza o Conjunto de Mensagens Gerado pelo Assistente de Conexão do adaptador

Procedimento

  • Cenário: Você executa o assistente de Conexão do Adaptador e seleciona um IDoc de entrada SAP . Você executa o assistente novamente, mas desta vez, você seleciona um SAP IDoc de saída. Ao utilizar o conjunto de mensagens gerado, o erro a seguir é emitido:
    'Selector exception caught from generateEISFunctionname', 'commonj.connector.runtime.SelectorException: 
    commonj.connector.runtime.SelectorException: For the IDoc type SapYwmspgi01, operation key=YWMSPGIWMS not 
    found using the application-specific information {Create={MsgType=, MsgCode=, MsgFunction=}} verify appropriate 
    combination of MsgType,MsgCode, MsgFunction is set in SapYwmspgi01, application-specific information. 
  • Explicação: Se você executar o assistente de Conexão do Adaptador para um IDoc de entrada SAP , então você executa o assistente novamente para um IDoc de saída SAP , a definição de IDoc de saída substitui a definição do IDoc de entrada. Informações armazenadas na definição de entrada são utilizadas para mapear MsgType,MsgCode e MsgFunction para uma ligação de método. A definição de saída não contém esses mapeamentos, portanto, o processamento do IDoc de entrada falha.
  • Solução: Para evitar esse erro, certifica-se de que os IDocs de entrada e saída SAP possuem nomes diferentes se eles forem armazenados no mesmo conjunto de mensagens.

Ao executar os exemplos do SAP no Linux ou no UNIX, o IBM App Connect Enterprise não se conecta ao gateway SAP

Procedimento

  • Cenário: Ao executar os exemplos do SAP no Linux® ou no UNIX, o fluxo de mensagens é implantado com sucesso, mas não é estabelecida uma conexão entre o IBM App Connect Enterprise e o sistema SAP.
    É possível ver a seguinte mensagem de erro:
    message: Connect to SAP gateway failed
    Connect parameters: TPNAME=SAMPRFC GWHOST=sapdev10 GWSERV=sapgw00
    ERROR service 'sapgw00' unknown
  • Explicação: Para que o Java Connector do SAP (JCo do SAP ) se comunique pela rede, é necessário configurar o serviço TCP/IP. Se você tiver instalado uma GUI funcional do SAP em sua estação de trabalho, o serviço TCP/IP será configurado como parte da instalação. Se você não tiver instalado uma GUI do SAP, deve-se configurar o serviço TCP/IP manualmente para que as amostras do SAP sejam executadas com êxito.
  • Solução: Localize o arquivo de serviços em /etc/services e edite-o para que inclua os IDs de serviço de gateway apropriados e os números de porta para o serviço TCP/IP no formato sapgwSID portnumber/tcp, onde SID é o ID do sistema SAP.
    Exemplo:
    sapgw00		3300/tcp
    sapgw01		3301/tcp
    sapgw02		3302/tcp
    e assim por diante.

    Para obter mais informações sobre a configuração do ` TCP/IP `, consulte a seção “Integração de rede” do Portal de Suporte do ` SAP `.

Mensagens de Entrada SAP (ALE e BAPI) Parecem Estar Ausentes

Procedimento

  • Cenário: As mensagens de entrada deSAP (ALE e BAPI) parecem estar faltando. Você pode descobrir que mensagens alternadas não atingem o nó de integração, mas nenhum erro é emitido.
  • Explicação: Este problema é geralmente causado quando dois nós de integração compartilham o mesmo ID do programa (SAP RFC Destination). Por exemplo, um desenvolvedor implantou um fluxo de mensagens, mas alguém mais usou o mesmo arquivo BAR sem ter alterado o ID do programa.
  • Solução: Certifique-se de que nenhum outro nós de integração esteja rodando com o mesmo ID do programa. Use a transação SAP SMGW para determinar se outros nós de integração estão conectados ao sistema SAP.

Quando dois módulos de entrada ALE usam o mesmo ID do programa RFC com SAP JCo versão 3.0.2, as exceções NullPointer são registradas no rastreio JCo e o Adapter não recebe IDocs

Procedimento

  • Cenário: Quando dois módulos de entrada ALE usam o mesmo ID do programa RFC com a versão SAP JCo versão 3.0.2, as exceções NullPointer são registradas no rastreio do JCo e o Adaptador não recebe IDocs.
    O exemplo a seguir mostra uma exceção típica no rastreio JCo.
    JCoDispatcherWorkerThread [16:44:42:140]: [JCoApi] Dispatcher.getNextListener() returns dispatch next call rfc handle(1) for null
    JCoDispatcherWorkerThread [16:44:42:140]: [JCoApi] caught Throwable in DispatcherWorker.run() while trying to dispatch a request java.lang.NullPointerException
    	at java.util.Hashtable.get(Hashtable.java:518)
    	at com.sap.conn.jco.rt.DefaultServerManager$DispatcherWorker.run(DefaultServerManager.java:268)
    	at java.lang.Thread.run(Thread.java:735)
    
    JCoDispatcherWorkerThread [16:44:42:140]: [JCoApi] Dispatcher.getNextListener() returns no calls
  • Explicação: SAP JCo versão 3.0.2 não suporta o uso de dois módulos de entrada ALE com o mesmo ID do programa RFC.
  • Solução: Para resolver este problema, faça o download de um hotfix a partir do SAP; o número de referência de ingressos do SAP é 584247/2009.

Você está usando um nó SiebelInput com o tipo de entrega configurado para desordenado, e mensagem de erro BIP3450 é emitida com uma exceção NullPointer

Procedimento

  • Cenário: Você está usando um nó SiebelInput , você configurou o tipo de entrega para desordenado no assistente de Conexão do Adaptador, e o número mínimo de conexões é 1 ou menos. A exceção a seguir é mostrada no rastreio do usuário:RecoverableException BIP3450E: An adapter error occurred during the processing of a message. The adapter error message is java.lang.NullPointerException.
  • Explicação: Ao usar eventos desordenados, as conexões mínimas (MinimumConnections) e as conexões máximas (MaximumConnections)) devem ser maiores que 1 para a entrega de eventos ser bem-sucedida.
  • Solução: Configure as propriedades MinimumConnections e MaximumConnections no assistente de Conexão do Adaptador para valores maiores que 1. Por exemplo, configure o número mínimo de conexões para 2 e o número máximo de conexões para 4.

Mensagem de erro BIP3450 é emitida quando você inclui um nó JDEdwardsRequest em um fluxo de mensagens e tente conectar-se a um servidor JD Edwards EnterpriseOne

Procedimento

  • Cenário: Você criou um fluxo de mensagens que contém um nó JDEdwardsRequest , mas a mensagem de erro BIP3450 é emitida, indicando que o nó é incapaz de se conectar ao servidor JD Edwards EnterpriseOne .
  • Explicação: Esta mensagem de erro indica que o nó JDEdwardsRequest está tentando se conectar ao servidor JD Edwards EnterpriseOne mas não é capaz de fazê-lo. Esse erro pode ser causado pelas seguintes situações.
    • O servidor JD Edwards EnterpriseOne não está em execução.
    • O adaptador JD Edwards foi configurado com detalhes de conexão incorretos; por exemplo, o nome do ambiente JD Edwards EnterpriseOne para o qual se conectar.
    • Os drivers JDBC que são necessários para se conectar ao servidor JD Edwards EnterpriseOne estão ausentes do caminho de classe. A tabela a seguir lista os arquivos de drivers JDBC necessários para cada banco de dados.
    Banco de dados Arquivos de driver JDBC Classe de implementação
    Oracle
    tsnames.ora
    classes12.zip
    oracle.jdbc.driver.OracleDriver
    SQLServer sqljdbc.jar com.ibm.microsoft.sqlserver.jdbc.SQLServerDriver
    AS/400 jt400.jar com.ibm.as400.access.AS400JDBCDriver
    DB2® Type-2 (JDK 1.4/1.5 ) db2java.zip com.ibm.db2.jdbc.app.DB2Driver
    DB2 Type-4 (JDK 1.4/1.5 )
    db2jcc.jar
    db2jcc_license_cu.jar
    com.ibm.db2.jcc.DB2Driver
    DB2 Type-4 (JDK 1.6 ) db2jcc4.jar com.ibm.db2.jcc.DB2Driver
  • Solução: Certifique-se de que as seguintes condições foram atendidas.
    • O servidor JD Edwards EnterpriseOne está em execução.
    • O adaptador JD Edwards foi configurado com os detalhes de conexão corretos.
    • Os drivers que são necessários para se conectar ao servidor JD Edwards EnterpriseOne estão no caminho de classe.