Вопрос по jsf-2 – JSF f: порядок выполнения события

4

Предположим, у меня есть несколько тегов f: event для обработки одного и того же вида события:

<f:event type="preRenderView" listener="#{myBean.action1()} />
<f:event type="preRenderView" listener="#{myBean.action2()} />

Гарантирован ли порядок исполнения?

Edit:
Чтобы выяснить, почему мне нужно, чтобы они выполнялись в определенном порядке, вот мой пример использования:

myBean # action1 на самом деле является сеттером

myBean # action2 - это метод, который работает с полем, установленным action1

На мой взгляд, заказ ненадежен, поэтому я просто обозначил их какEL expressions внутри моего лица так:

<p:ouputPanel>
  #{myBean.action1()}
  #{myBean.action2()}
</p:ouputPanel>
Не могу этого сделать. Мне нужно передать различные параметры для тех,action методы. И методы не связаны логически. Я знаю, что есть и другие альтернативы, но мне просто интересно, могу ли я положиться на порядок. jFrenetic
Не знаю, но вы всегда можете гарантировать это на 100%, если поместите одно событие f: только в которое вы вызываете action2 из action1 :) Daniel

Ваш Ответ

1   ответ
4

спекуляция Кажется, явно не говорится, что где-либо.

Application#publishEvent() API упоминает, что они получены и обработаны какList который по природе заказан. ОбаMojarra а такжеMyFaces реализации подтверждают это, сохраняя их вCopyOnWriteArrayList а такжеArrayList соответственно.

Таким образом, логически на основе API и обеих реализаций они действительно выполняются по порядку, если добавляются к одному и тому же родительскому компоненту пользовательского интерфейса.

Спасибо! Ваше мнение высоко ценится как обычно;) jFrenetic
Добро пожаловать.

Похожие вопросы