Как получить HTTP получить параметры запроса в JSF 2.0 Bakcing bean? - PullRequest
1 голос
/ 06 июня 2010

У меня возникли проблемы с передачей параметров http get бэк-компоненту jsf 2.0. Пользователь будет вызывать URl с некоторыми параметрами, содержащими идентификатор некоторой сущности, который позже используется для сохранения какой-либо другой сущности в БД.

Весь процесс можно обобщить следующим образом: 1. открытая страница пользователя http://www.somhost.com/JsfApp/step-one.xhtml?sid=1 2. пользователь заполняет некоторые данные и переходит на следующую страницу 3. пользователь заполняет еще несколько данных, а затем объект сохраняется в БД с параметром sid с первого шага.

У меня есть бэк-бэк с областью действия, который содержит данные со всех страниц (шагов), но я не могу передать параметр в свойство бина ..

есть идеи?

1 Ответ

1 голос
/ 06 июня 2010

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

@ManagedBean
@RequestScoped
public class Step {

    @ManagedProperty(value="#{param.sid}")
    private Long sid;

    @ManagedProperty(value="#{data}")
    private Data data; // #{data} is a @SessionScoped @ManagedBean

    public String submitStep1() {
        // ...
    }

    public String submitStep2() {
        // ...
    }

    // ...
}
...