Je suis juste affaire à un nouveau scénario pour moi, que je crois peut-être commun à un certain :) ..Comment faire pour passer un JMS à un pont WebSphere MQ dans un appel synchrone à l'aide du modèle de demande-réponse?
Conformément aux exigences que je besoin de construire une expérience utilisateur d'être comme une transaction synchrone en ligne pour une appel de service Web, qui délègue l'appel à une série IBM MQ à l'aide d'un pont JMS-MQ asynchrone. Le client appelle le service Web et son message doit être publié dans une file d'attente JMS sur le serveur App qui sera remis à WebSphere MQ. Après le traitement, une réponse sera renvoyée au serveur App dans un point de terminaison de file d'attente FIXED JMS. .
L'exigence concerne cette transaction qui doit expirer au cas où WebSphere MQ ne fournit pas la réponse dans un délai défini, que le service Web envoie un signal de délai d'attente au client et ignore cette transaction.
L'esquisse du problème est la suivante.
Je dois bloquer la demande sur le service Web jusqu'à ce que la réponse arrive ou expire.
Que je suis à la recherche d'une bibliothèque ouverte pour m'aider dans cette tâche. Ou la seule solution est de bloquer un thread et de garder la mise en commun pour la réponse? Peut-être que je pourrais implémenter un bloc avec un écouteur pour être averti quand la réponse arrivera? Un peu de discussion serait très utile pour moi maintenant pour essayer d'effacer mes idées à ce sujet. Des suggestions?
J'ai un croquis que je l'espère aider à effacer l'image;)
Oui, nous avons une file d'erreurs où les messages expirés sont en avant et un autre morceau de code les traite. –