Я вызываю поток из бэк-компонента, который делает много действий db. Я хочу добавить сообщение в контекст, , но пока я не дойду до конца метода run(), контекст уже выпущен. Как я могу добавить сообщение в контекст внутри метода run() потока, без зависимости от компонента?facescontext освобождается до завершения резьбы для работы
ответ
Да .. Вы можете сделать это с помощью AJAX толчке ... Вы можете использовать простое лицо или все, что вы хотите сделать, толкающее ...
Вы должны сделать боб для уведомлений .. и всякий раз, когда вам хотите уведомить о клиенте (как вам нравится) сообщить, что боб как-то ... думаю об этом :)
Таким образом, вы можете объявить клиенту через 30 минут, что он хотел это сделать ...
В худшем случае вы можете использовать функцию setInterval в javascript .. периодически проверять сервлет на сообщения ...
Вот a tutorial for commet ..
Подробнее о comet here
(Да .. с AJAX толчок довольно длинный путь .. - если вы хотите сделать это самостоятельно)
приветствий ,
Экземпляр контекста лиц привязан к нити, обслуживающей текущий запрос через ThreadLocal. Вы можете попробовать восстановить экземпляр FacesContext и передать его в качестве переменной в поток перед его запуском.
- 1. Задание. После завершения работы до завершения Задачи
- 2. Пауза до завершения работы функции
- 3. Измерение времени работы резьбы
- 4. Почему неблокированная блокировка таблицы освобождается до завершения транзакции в RedShift?
- 5. Продолжить только после завершения резьбы
- 6. Что делать, если объект освобождается до завершения его выполнения метода
- 7. Множественное измерение времени завершения резьбы
- 8. Состояние аргумента после завершения резьбы
- 9. Запретить закрытие от работы до завершения другого
- 10. метод заканчивается до $ .getJSON завершения работы
- 11. Android - Закрытие Бар Прогресс После завершения резьбы
- 12. Порт не освобождается при завершении работы сервера
- 13. JSFUnit доступ к FacesContext до создания JSFSession
- 14. Программным предотвратить Windows, для завершения работы
- 15. Ждите завершения работы контура
- 16. Рассчитать время работы резьбы в C
- 17. Изменение сценария завершения работы
- 18. Обработка события завершения работы
- 19. Почему окончание вызова ember.run до завершения работы, запланированного ember.run.later, завершается?
- 20. Измерение времени до завершения функции во время работы функции
- 21. Mocking FacesContext
- 22. .Net C# возвращает значение ui до завершения «единицы работы». - Noob
- 23. Как ускорить мой цикл php до завершения работы сервера?
- 24. Событие RunWorker рабочего стола завершено даже до завершения работы
- 25. UIViewController освобождается до вызова метода делегата
- 26. Блок инициализированный ViewController освобождается до начала
- 27. Spring/Hibernate добавляет крюк завершения работы до закрытия EntityManagerFactory
- 28. Что происходит с памятью, которая не освобождается после завершения программы?
- 29. продвижение после завершения работы без работы
- 30. Журналы для ошибки завершения работы Visual Studio?
В моем веб-сайте мы не используем премьер или лед. Есть ли другой вариант, который вы знаете? – OshikawaL
вы можете использовать jQuery или что-то, что хотите (даже чистый javascript - я предлагаю jQuery всем, потому что это crossbrowser) .. и сделайте сам ajax push ... Я думаю, вы можете сделать это с помощью сервлета. Прочитайте это: http : //en.wikipedia.org/wiki/Comet_ (программирование), но я предлагаю вам использовать простые шрифты только для необходимой страницы :) – Alex
Возможно, вы можете связать мне пример, потому что я не очень хорошо его знаю? – OshikawaL