Сохранение состояния макета Primefaces - PullRequest
7 голосов
/ 12 августа 2011

Я понимаю, что Primefaces Layout и Dashboard имеют состояние, которое можно сохранить.

Может ли кто-нибудь помочь мне с фрагментом кода (или некоторым учебным пособием / как) на сайте о том, как сохранить макет Primefaces (полную страницу) в какой-либо постоянной базе данных или файле.

В этом случае я хочу, чтобы пользователь мог сохранять свои собственные предпочтения относительно размера layoutUnit, который layoutUnit свернут и закрыт, и такой, когда они входят в систему.

Спасибо

ps: я использую Primefaces 2.2, работающий на Tomcat - по сути, та же конфигурация, что и для загружаемой витрины.

1 Ответ

2 голосов
/ 07 марта 2012

Вы просто отвечаете на события и сохраняете состояние. Руководство пользователя дает подробности.

<p:layout closeListener="#{layoutBean.handleClose}" toggleListener="#{layoutBean.handleToggle}" resizeListener="#layoutBean.handleResize}"/>


public void handleClose(CloseEvent event) {
    LayoutUnit closedUnit = event.getComponent(); //now get all the info related to closedUnit
}

public void handleResize(ResizeEvent event) {
    LayoutUnit resizedUnit = event.getComponent(); //now get all the info related to resizedUnit
}

public void handleToggle(ToggleEvent event) {
    LayoutUnit toggledUnit = event.getComponent();  //now get all the info related to toggledUnit 
    Visibility status = event.getVisibility();
}

Теперь состояние может быть сохранено в базе данных, и для воспроизведения сохраненного состояния можно задавать атрибуты блоков макета в соответствии с сохраненным ранее состоянием.

...