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)
.
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
N/A
N/A
Existem algumas propriedades específicas para cada broker:
Tibco EMS
Connection String
Conexão string JMS no formato tcp://{host}:{port}
.
tcp://localhost:61616
String
Oracle AQ
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.
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
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