Você deve implementar os arquivos que compõem o projeto
do nó definido pelo usuário para workbench antes
do nó definido pelo usuário se tornar disponível para uso. Isto pode ser feito
em um ambiente de teste, utilizando a Perspectiva de Desenvolvimento
de Plug-in no workbench.
Utilize a opção Executar > Executar como > Workbench de Tempo de Execução
para iniciar uma nova cópia do workbench com
os nós extras incluídos. Para obter informações adicionais sobre essa
perspectiva, consulte
PDE Guide.
Confira os
novos nós na paleta quando abrir o editor Fluxo de Mensagens. Para
testar o novo nó, inclua-o em um fluxo de mensagens (consulte Incluindo um Nó)
e implemente como de costume. Quando estiver satisfeito com a definição do nó,
inclua o novo nó na paleta normal de nós no editor Fluxo de Mensagens
(consulte Distribuindo um Nó Definido pelo Usuário).
Até fazer isto, os novos nós estarão disponíveis somente na sessão
workbench de teste.
Quando você tiver configurado e implementado um fluxo de mensagens
contendo seu nó definido pelo usuário e enviado uma mensagem de teste
a ele, existem várias ferramentas de diagnóstico disponíveis para
determinar se o nó funciona ou, se não funciona, o que aconteceu de
errado.
- Verifique o registro de eventos (consulte Editor de Registro de Eventos para
obter informações sobre isso).
- Inclua um nó Trace em seu fluxo de mensagens e verifique sua saída (consulte Nó Trace para obter informações sobre nós Trace).
- Utilize o depurador de fluxo para depurar o fluxo contendo seu nó (consulte Testando e Depurando Aplicativos do message flow para obter informações sobre isso).
As mensagens de depuração a seguir ajudam a
compreender a execução de nós e analisadores definidos pelo usuário:
- BIP2233 e BIP2234: um par de mensagens
rastreadas antes e depois da chamada de uma função de implementação de extensão
definida pelo usuário. Essas mensagens informam os parâmetros de entrada e o valor retornado.
Nessas
mensagens, uma "função de implementação" pode ser interpretada como
uma função de implementação C ou um método de implementação Java.
- BIP3904: uma mensagem rastreada antes de chamar o método evaluate() Java de um nó definido pelo usuário.
- BIP3905: Uma mensagem rastreada antes
de chamar a função de implementação CcniEvaluate() (membro iFpEvaluate
de CNI_VFT) de um nó definido pelo usuário.
- BIP4142: uma mensagem de depuração rastreada durante a chamada
de uma função de utilitário do nó definido pelo usuário, onde a função de utilitário altera
o estado de um elemento de sintaxe. Isto inclui todas as funções de utilitário que começam com
cniSetElement*, em que * representa todos os nós com esse
stem.
- BIP4144 e BIP4145: um par de
mensagens rastreado por determinadas funções de implementação que, quando chamadas por uma extensão
definida pelo usuário, podem modificar o estado interno de um objeto do intermediário de mensagens. Os objetos
possíveis do intermediário de mensagens incluem elemento, nó ou analisador de sintaxe.
Nessas
mensagens, uma "função de implementação" pode ser interpretada como
uma função de implementação C ou um método de implementação Java.
- BIP4146: uma mensagem de depuração rastreada durante a chamada
de uma função de utilitário do analisador definido pelo usuário, onde a função de utilitário altera o estado de um elemento de sintaxe. Isto inclui todas as funções de utilitário que começam com cpiSetElement*, em que * representa todos os nós com esse
stem.
Para obter informações sobre a API do nó definido pelo usuário da linguagem C, consulte a API do Analisador Definido pelo Usuário de Linguagem C e
a API do Nó Definido pelo Usuário de Linguagem C.
- BIP4147: uma mensagem de erro que
é rastreada, quando uma extensão definida pelo usuário transmite um objeto de entrada inválido
para uma função da API do utilitário de extensão definido pelo usuário.
- BIP4148: uma mensagem de erro que
é rastreada, quando uma extensão definida pelo usuário danifica um objeto do intermediário.
- BIP4149: uma mensagem de erro que
é rastreada, quando uma extensão definida pelo usuário transmite um ponteiro de dados de entrada inválido
para uma função API do utilitário de extensão definido pelo usuário.
- BIP4150: uma mensagem de erro rastreada quando uma extensão definida pelo usuário transmite dados de entrada inválidos para uma função de API do utilitário de extensão definido pelo usuário.
- BIP4151: uma mensagem de depuração rastreada quando cniGetAttribute2 ou cniGetAttributeName2 configura o código de retorno para um valor inesperado. Os valores esperados são CCI_SUCCESS, CCI_ATTRIBUTE_UNKNOWN e CCI_BUFFER_TOO_SMALL. Qualquer outro valor é um valor inesperado.
- BIP4152: uma mensagem de depuração que é rastreada na seguinte situação:
- cniGetAttribute2 ou cniGetAttributeName2 configura o código de retorno para CCI_BUFFER_TOO_SMALL.
- cniGetAttribute2 ou cniGetAttributeName2 é chamado novamente com o buffer de tamanho correto, no entanto, o código de retorno é configurado para CCI_BUFFER_TOO_SMALL.
Consulte
Resolvendo Problemas com Extensões Definidas pelo Usuário para obter uma lista completa de funções de implementação.
Ative o rastreio do usuário no nível de depuração, para
ver essas entradas de rastreio. Consulte a seção Utilizando o Rastreio para obter mais informações.