JMS
Descubra mais sobre o componente JMS e saiba como utilizá-lo na Digibee Integration Platform.
O JMS realiza operações em brokers de mensageria que suportem API JMS. Atualmente suportamos IBM MQ, Oracle AQ e Tibco EMS.
Parâmetros
Dê uma olhada nas opções de configuração do componente. Parâmetros suportados por expressões Double Braces estão marcados com (DB)
.
Parâmetro | Descrição | Valor padrão | Tipo de dado |
---|---|---|---|
Account | Conta do tipo Basic que será utilizada para autenticação no broker JMS configurado. | N/A | String |
Message | Conteúdo da mensagem a ser enviada. Nesse campo pode ser informado qualquer valor de texto. | N/A | String |
Destination | Tipo de destino para onde a mensagem será enviada (Queue ou Topic). | Topic | String |
Name | Nome da fila ou tópico. | Test | String |
JMS Provider | Provedor JMS que será utilizado. Opções disponíveis: IBM MQ, Oracle AQ e Tibco EMS. | Tibco EMS | String |
Binary Content | Se a opção estiver ativada, a mensagem recebida é um base64 dos bytes que você precisa enviar; do contrário, a mensagem será enviada como texto. | False | Booleano |
Charset | Se a mensagem que você precisa enviar é binária, então você deve selecionar o charset para a mensagem. | N/A | String |
Raw Value | Se a opção estiver ativada, a mensagem é um raw value e precisa ser enviada como JSON (ex.: a palavra 'teste' será enviada como "teste"). | False | Booleano |
Fail On Error | Se a opção estiver ativada, a execução do pipeline com erro será interrompida; do contrário, a execução do pipeline continua, mas o resultado vai mostrar um valor falso para a propriedade "success". | False | Booleano |
Advanced Configurations | Se a opção estiver ativada, você pode acessar as seguintes configurações: Correlation ID, Expiration, Priority, Type e JMS Object Properties. | False | Booleano |
Correlation ID | Um cliente de JMS pode utilizar o header JMS Correlation ID para associar uma mensagem a outra (para solicitações de solicitação/resposta). Esse campo pode conter um valor de string arbitrário. A utilização desse campo é opcional. | N/A | String |
Expiration | Tempo de expiração da mensagem dentro da fila ou tópico (Time To Live). Em milissegundos. | N/A | Inteiro |
Priority | Define a prioridade da mensagem. Um valor de 0 a 4 indica um intervalo de prioridade normal (sendo 4 o valor padrão); os valores de 5 a 9 indicam prioridade acentuada. | 4 | Inteiro |
Type | Esse campo pode ser utilizado para definir algum valor no envio da mensagem, que poderá ser utilizado para filtrá-la. | N/A | String |
JMS Object Properties | Define algumas propriedades JMSX da API JMS. Saiba mais sobre este parâmetro na seção abaixo. | N/A | N/A |
Existem algumas propriedades específicas para cada broker:
Tibco EMS
Parâmetro | Descrição | Valor Padrão | Tipo de Dado |
---|---|---|---|
Connection String | Conexão string JMS no formato | tcp://localhost:61616 | String |
Oracle AQ
Parâmetro | Descrição | Valor Padrão | Tipo de Dado |
---|---|---|---|
Host Name | Nome do host da conexão string JMS. | N/A | String |
Port | Número da porta para Oracle. | N/A | String |
Sid | Oracle database sid (identificador de site). | N/A | String |
JBDC Driver | Oracle JBDC driver (ex.: THIN ou OCI). | N/A | String |
IBM MQ
Atualmente não temos suporte para autenticação por meio do TLS.
Parâmetro | Descrição | Tipo de Dado | |
---|---|---|---|
Host Name | Nome do host da conexão string JMS. | N/A | String |
Port | Número da porta do broker IBM MQ. | N/A | String |
Channel Name | Nome do canal a ser utilizado na comunicação do broker. | N/A | String |
Queue Manager | Nome do gerenciador de filas do IBM MQ. | N/A | String |
JMS Object Properties
Parâmetro | Descrição | Tipo de Dado |
---|---|---|
JMSXUserID | String arbitrário que identifica o usuário que está enviando a mensagem. Ele deve ser definido pelo provedor durante a operação de envio. | String |
JMSXAppID | Identidade da aplicação de envio. Ela deve ser definida pelo provedor durante a operação de envio. | String |
JMSXDeliveryCount | Número de tentativas de envio da mensagem. | int |
JMSXGroupID | Identidade do grupo de mensagem (definida pelo cliente) da qual a mensagem em questão faz parte. Ela deve ser usada pelos clientes que enviarem mensagens em lotes. | String |
JMSXGroupSeq | Sequência numérica da mensagem (definida pelo cliente) dentro de um grupo. | int |
JMSXConsumerTXID | Identificador da transação dentro da qual a mensagem foi produzida. | String |
JMSXProducerTXID | Identificador da transação dentro da qual a mensagem foi consumida. | String |
JMSXRvcTimeStamp | Tempo levado para uma mensagem ser entregue ao seu consumidor final. | long |
JMSXState | Pode ser 1 (em espera), 2 (pronto), 3 (expirado) ou 4 (retido). Isso não é relevante para o aplicativo do cliente, sendo de uso interno do provedor. | int |
No exemplo a seguir, você pode ver como usar algumas propriedades:
Fluxo de Mensagens
Entrada
O componente aceita qualquer mensagem de entrada e pode fazer uso dela através de Double Braces.
Saída
Sucesso
Erro
JMS em Ação
Tibco EMS
Mensagem:
Destination: QUEUE
Name: NAME.OF.THE.QUEUE
JMS Provider: Tibco EMS
Connection string:
tcp://<HOST>:<PORT>
Is Binary: desabilitado
Raw Value: desabilitado
Fail On Error: desabilitado
Resposta:
Oracle AQ
Mensagem:
Destination: QUEUE
Name: NAME.OF.THE.QUEUE
JMS Provider: Oracle AQ
Hostname:
<HOSTNAME> ou <IP>
Port:
<PORT>
SID:
<ORACLE SID>
JDBC Type: thin
Is Binary: desabilitado
Raw Value: desabilitado
Fail On Error: desabilitado
Resposta:
IBM MQ
Mensagem:
Destination: QUEUE
Name: NAME.OF.THE.QUEUE
JMS Provider: Oracle AQ
Hostname:
<HOSTNAME> ou <IP>
Port:
<PORT>
SID:
<ORACLE SID>
JDBC Type: thin
Is Binary: desabilitado
Raw Value: desabilitado
Fail On Error: desabilitado
Resposta:
Atualizado