Как вызвать метод управляемого компонента с помощью механизма опроса? - PullRequest
0 голосов
/ 15 февраля 2012

мне нужен какой-то механизм для выполнения метода из управляемого компонента в определенные промежутки времени ... так что, в основном, мне понадобится тег опроса от Apache Trinidad:

<tr:poll interval="5000" pollListener="#{myManagedBean.doPoll}" id="pollComponent"/>

Но:У нас нет реализации Тринидада в нашем проекте, и мы не можем включить ее в текущую стадию проекта.Все, что у нас есть, это MyFaces 2.0.6.реализация JSF 2.

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

http://jsfatwork.irian.at/book_de/ajax.html#!idx:/ajax.html:6.4.2.

Этот пример не делает ничего, кроме обновления выходного текста, содержащего текущее время.

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

Есть ли способ достичь этого с помощью MyFaces и некоторых «составленных вручную» составных компонентов?

Возможно ли настроить компонент ajaxPoll из учебного руководства jsf-at-work выше, чтобыон способен выполнять определенный метод управляемого компонента?

Заранее благодарим за все подсказки!

1 Ответ

1 голос
/ 16 февраля 2012

В самом простом (и хакерском) режиме вы можете отправить скрытую форму

<h:form id="poll" style="display:none">
    <h:commandLink id="link">
        <f:ajax event="click" listener="#{bean.poll}" />
    </h:commandLink>
</h:form>

с этим JS

document.getElementById('poll:link').onclick();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...