В среде Java EE 5 у меня возникла проблема обеспечения наличия некоторых данных, написанных другой частью, прежде чем продолжить обработку моих собственных данных.Как правильно отложить обработку в контексте Java EE?
Исторически (время J2EE) это было сделано путем помещения объекта данных во внутреннюю очередь JMS после ожидания, например. 500 мс через Thread.sleep.
Но это не чувствует, что лучший способ справиться с этой проблемой, поэтому у меня есть 2 вопроса:
- Есть ли какие-либо проблемы с использованием метода сна в контексте Java EE?
- Какое разумное решение откладывает некоторую обработку в приложении Java EE 5?
Edit:
Я должен отметить, что моя обработка происходит при обработке объектов из очереди JMS через MDB.
И может случиться так, что данные, для которых я жду, никогда не появляются, поэтому должен быть какой-то тайм-аут, после чего я могу выполнить специальную обработку с моими данными.
Это очень хороший совет: приложения работают в JBoss 5.1, поэтому [этот вопрос форума JBoss] (https://community.jboss.org/message/559414) нужно установить 'JMS_JBOSS_SCHEDULED_DELIVERY_PROP_NAME'. –