<f: ajax> многократный вызов метода Java - как это сделать только один раз? - PullRequest
3 голосов
/ 02 июня 2011

Я использую ajax для вызова метода Java bean.findDetail().Если метод находит объект detailItem в базе данных, отображается остальная часть inputTexts.

<h:inputText id="worker" value="#{bean.item.id}">
 <f:ajax event="change" render="name" listener="#{bean.findDetail}"/>
 <f:ajax event="change" render="surname"/>
 <f:ajax event="change" render="age"/>
</h:inputText>

<h:panelGroup>
 <h:inputText id="name" value="#{bean.detailItem.name}" disabled="true"/>
 <h:inputText id="surname" value="#{bean.detailItem.surname}" disabled="true"/>
 <h:inputText id="age" value="#{bean.detailItem.age}" disabled="true"/>
</h:panelGroup>

Все работает нормально, но метод вызывается три раза!

Есть ли способ визуализировать все три inputText одновременно?

1 Ответ

4 голосов
/ 02 июня 2011

Да, просто поместите разделенные пробелом значения в элемент рендеринга

<h:inputText id="worker" value="#{bean.item.id}">
 <f:ajax event="change" render="name surname age" listener="#{bean.findDetail}"/>
</h:inputText>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...