JSF2 Re-Rendering / Update UI: Повторите список, используя Ajax - PullRequest
0 голосов
/ 04 октября 2011

У меня есть список ui: repeat, который извлекает из моей базы кучу значений, и я использую его в новостном тикере на основе jQuery. Я пытаюсь периодически обновлять / перерисовывать этот список через ajax, так как я эффективно отображаю последние записи новостей в моей базе данных, используя простой метод p: poll.

В качестве альтернативы у меня уже есть функция ap: poll ajax, которая уже опрашивает количество элементов, хранящихся в моей базе данных, которые я хотел бы связать со своим пользовательским интерфейсом: повторить список для обновления на основе изменения этой цифры, но для сейчас я просто пытаюсь обновить его!

Вот как компилируется список пользовательского интерфейса: repeat:

                        <h:form>
                        <div id="ticker-wrapper" class="no-js">
                            <ui:repeat id="newsTickerList" value="#{dbWidgetBean.latestNewsList}" var="newsItem">           
                                <ul id="js-news" class="js-hidden">

                                    <li class="news-item">                                               
                                        <h:outputLink  value="#{newsItem.rssLink}" target="_blank">
                                            <b><h:outputText value="#{newsItem.indexName}: "/></b>
                                            <h:outputText value="#{newsItem.testFeedLatest}"/>
                                        </h:outputLink>
                                    </li>

                                </ul>
                            </ui:repeat>
                        </div>
                        <p:poll interval="60" listener="#{dbWidgetBean.latestNewsList}" update="newsTickerList"/>
                    </h:form>

Я пробовал различные производные кода, приведенного выше, и список хорошо построен в элементе @PostConstruct, но я не могу получить список для обновления!

Любая помощь будет принята с благодарностью!

Приветствия

1 Ответ

0 голосов
/ 22 октября 2011

Вы пытались обновить окружающий тег div "ticker-wrapper"? Если это не сработает, замените div на p: outputPanle и обновите его.

...