Проблема с использованием ManagedProperty - PullRequest
1 голос
/ 04 апреля 2011

Я пытаюсь разделить объект между несколькими компонентами SessionScoped. Я получаю ошибки, и я действительно не знаю, почему.

@ManagedProperty(value="#{tb}")
private testBean tb;

Я считаю, что это правильный синтаксис, но любой вызов, например tb.getName, приводит к исключению.

@ManagedBean(name = "tb")
public class testBean 
{
    private String name = "sumthing";

    public void setName(String name)
    {
        this.name = name;
    }

    public String getName()
    {
        return this.name;
    }
}

Полностью ли я неправильно понял, как работает ManagedProperty?

Ответы [ 3 ]

2 голосов
/ 04 апреля 2011

Возможно, ваш потребительский класс не имеет сеттеров / геттеров для tb

0 голосов
/ 10 июля 2012

Вы также можете взглянуть на область действия Flash, идея заключается в том, чтобы использовать ее, если вы просто хотите передавать значения / объекты из одного представления в другое и не хотите обременять сервер состоянием сеанса.

Например, см .: http://jugojava.blogspot.com/2011/06/jsf2-flash-scope-example.html

0 голосов
/ 04 апреля 2011

Почему бы не добавить @SessionScoped к вашему JavaBean?См. Мое объяснение к этому ТАК вопрос .Во-вторых, вы не делаете #{tb.getName}, вместо этого используйте EL Expression #{tb.name}.

...