[RESOLVIDO]Chamada JMS Duplicada

1 resposta
D

Tenho uma Fila JMS que envia documentos para uma API externa, o que parece que esta ocorrendo e que a fila esta duplicando estas chamadas quando a fila recebe muitas requisições de uma só vez, e a chamada demora um pouco a processar, ja li um pouco sobre o assunto na internet, porém ainda não consegui resolver, quem puder ajudar agradeço.

segue o trecho que executa a fila:

@MessageDriven(activationConfig =

{

@ActivationConfigProperty(propertyName = destination, propertyValue = java:/jms/docTransport) ,

@ActivationConfigProperty(propertyName = destinationType,  propertyValue = javax.jms.Queue)

}

)

@TransactionManagement(TransactionManagementType.BEAN)
public class DocTansportMdb implements MessageListener {

private Logger log = Logger.getLogger(DocTansportMdb.class);

public void onMessage(Message message) {

DocRequestDto dto = null;

try {

dto = message.getBody(DocTansportMdb.class);

message.acknowledge();
log.info("Processando...");
  	long startTime = System.nanoTime();
  	execute(dto);
  	long endTime = System.nanoTime();
  	long duration = (endTime - startTime);
  	log.info("Processado em " + (duration / 1000000) + " milisegundos");
  	

  } catch (JMSException e) {
  	log.error(e.getMessage(), e);
  } finally {
  	log.info("<< DocTansportMdb

Bloco de citação

.onMessage()");

}

}

}

1 Resposta

D

So para registrar o problema foi resolvido, utilizando a configuração abaixo, conforme documentação: https://docs.oracle.com/cd/E19798-01/821-1841/bncfw/index.html

@ActivationConfigProperty(propertyName = "acknowledgeMode", propertyValue = "Auto-acknowledge")
Criado 15 de abril de 2019
Ultima resposta 17 de abr. de 2019
Respostas 1
Participantes 1