где хранятся пары f: имя / значение атрибута? - PullRequest
0 голосов
/ 13 сентября 2011

Я использую следующее (пример)

<h:commandButton value="Submit" action="#{indexBean.submit}" 
        actionListener="#{indexBean.btnListener}" >
    <f:attribute name="valueOne" value="v1" />
    <f:attribute name="valueTwo" value="v2" />
    <f:attribute name="valueThree" value="v3" />
</h:commandButton>

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

Они хранятся на сервере на стороне сервера, в состоянии просмотра или где-то еще?

С наилучшими пожеланиями,

1 Ответ

0 голосов
/ 13 сентября 2011

Они хранятся как атрибуты рассматриваемого компонента. Они не попадают в сгенерированный вывод HTML, потому что средство визуализации компонента не распознает их как стандартные атрибуты HTML.

Компонент, в свою очередь, сохраняется в дереве компонентов в памяти на стороне сервера и, если он касается компонента UIForm, UIInput или UICommand, то он также сохраняется в состоянии просмотра.

Если вы хотите передать видимые параметры, вам лучше использовать <f:param>. Затем они будут видны в сгенерированной функции JavaScript onclick HTML-представления компонента. Обратите внимание, что <f:param> в <h:commandButton> поддерживается только с версии JSF 2.0.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...