Как периодически обновлять часть страницы с помощью JSF и openfaces - PullRequest
0 голосов
/ 19 января 2011

Приложение предназначено для отображения расстояния устройства до координаты GPS на экране браузера мобильного устройства.

HTML5 позволяет получать координаты с мобильного телефона, но их необходимо периодически отправлять на сервер, рассчитывать расстояние до цели ирезультат отображается на веб-странице?

Как заставить страницу JSF и OpenFaces периодически публиковать значения h: inputHidden и отображать h: outputText с помощью ajax?Для этого у Primefaces есть компонент p: poll.

    <h:form id="coords">
        <h:inputHidden id="latitude" value="setByJavascript"></h:inputHidden>
        <h:inputHidden id="longitude" value="setByJavascript"></h:inputHidden>        
    </h:form>
    <h:outputText id="distance" value="#{bean.distance}"></h:outputText>

1 Ответ

2 голосов
/ 31 января 2011

Вы можете использовать клиентский API OpenFaces для вызова запросов Ajax (O$.ajax.request()) изнутри функции setInterval(), например:

<body onload="setInterval(function() {
        O$.ajax.request(null, null, {
          execute: 'coords:latitude coords:longitude', 
          render: 'distance'});
        }, 10000)">
  <h:form id="coords">
  ...

Этот кодможет потребоваться некоторые настройки, но это показывает общее представление о том, как это можно сделать.

...