Я використовую PrimeFaces, і у мене є рядок:
<p:ajax update="toUpdate">
проблема в тому, що цей ідентифікатор не завжди існуєсторінки. (сторінка динамічна, іноді вона містить частину, яка має цей конкретний ідентифікатор, а іноді - ні) Коли він існує, він чудово працює, але коли ідентифікатор не існує, компонент аварійно завершує роботу ((можливо, це якась проблема перевірки)
Як я можу це виправити?
Це добре відоме питання?
Дякую!
Відповіді:
1 для відповіді № 1Вам потрібно надати завжди відтворюваний компонент для оновлення, наприклад:
<p:ajax update="toUpdate">
<h:panelGroup id="toUpdate">
<p:dataTable id="tableID" rendered="#{bean.someCondition>"...
</h:panelGroup>
Отже, якщо у вас є компонент, який може мати o чи нівидимі, не використовуйте його для оновлення, оскільки це може бути поза деревом компонентів. Замість цього використовуйте компонент (контейнер), який ви впевнені, що буде відтворений та присутній у дереві компонентів.
0 для відповіді № 2
Спробуйте цей код
<f:ajax render="toUpdate">
<h:outputText id="toUpdate">
<!-- do something -->
</h:outputText>