J'ai besoin de mon application pour soumettre des données à un service Web et attendre 90 secondes pour la réponse. Mais s'il n'y a pas de réponse en 60 secondes, je dois rediriger l'utilisateur vers une page différente et continuer à attendre la réponse pendant 30 secondes supplémentaires s'il vient ensuite le traiter. Je sais que je dois utiliser un thread pour cela, mais je ne sais pas comment intégrer les bandes de roulement dans ce cas afin que les threads puissent échanger des données entre eux.Passer des données entre threads en Java?
Des idées? J'utilise JSF pour l'interface utilisateur.
L'exigence est la suivante: Le service Web enverra une réponse en 90 secondes (c'est le temps de réponse maximum pour cela). Mais l'utilisateur recevra une réponse (une réponse fictive au cas où la réponse ne viendrait pas dans les 60 secondes) en 60 secondes. Donc, même si l'utilisateur a reçu une réponse fictive (après 60 secondes), mon application continuera à attendre 30 secondes de plus pour la réponse
https://www.youtube. com/watch? v = 378DHU9IsS4 – clstaudt
"besoin de rediriger l'utilisateur vers une page différente et continuer à attendre la réponse" - ce que cela signifie? Soit vous Java-application peut être redirigé (si l'application Java est un client), Ou il y a une certaine communication sur le navigateur? Veuillez clarifier – Dewfy
Vous devez probablement éviter d'utiliser des threads dans une application gérée par conteneur, car la gestion des threads est généralement effectuée par le conteneur. Je ne comprends pas vraiment le cas d'utilisation ici: attendre 60 secondes, puis rediriger (pourquoi? Pour les commentaires des utilisateurs?), Attendre 30 secondes de plus (et puis quoi?). Pouvez-vous élaborer un peu? – maksimov