Я использую теги JSTL в своем приложении JSF. При определенных действиях мне нужно, чтобы дерево компонентов перестраивалось, как если бы это была начальная сборка. Мои текущие симптомы — неправильный объект для ассоциаций компонентов, повторяющиеся идентификаторы и другие проблемы с устаревшими компонентами. Это использует тег c: foreach (не может использовать повторяющийся тег, см. Пример ссылки), который используется на этапе сборки.
Насколько я понимаю, можно принудительно выполнить перестройку, но я не смог найти, где и как это происходит. Я открыт для решений, которые начинаются на клиенте или на сервере.
Пример кода, который я использую, см. на этой странице динамических вкладок в Richfaces. http://in.relation.to/Bloggers/UsingDynamiclyCreatedRichFacesTabPanelForSearchResults
Примечание. Использование ui:repeat или a4j:repeat невозможно. Подробнее см. на странице примера.
Другое Примечание. Компоненты приложения имеют область действия сеанса, и данные в них должны быть, а не состоянием дерева компонентов.
Обновление Этот вопрос напрямую связан с проблемой, поднятой в этой статьи и первого комментария. Я не знал, как на самом деле сделать обходной путь в первом комментарии, и принятый ответ привел меня к нему.