Session Bean sendo perdido?

A primeira solicitação "nonpostback" para viewBean, a propriedade someValue em sessionBean é nula. Agora, em uma solicitação de postagem, estou definindo uma entrada do usuário como someValue. O problema é que someValue é sempre nulo em qualquer solicitação "nonpostback". Aqui está o meu código:

@ManagedBean
@ViewScoped
public class ViewBean implements Serializable {

    @ManagedProperty(value = "#{sessionBean}")
    private SessionBean sessionBean;

    private String inputText;

    @PostConstruct
    public void init() {
        if (sessionBean.getSomeValue() != null) // ALWAYS NULL
            doSomething(sessionBean.getSomeValue());
    }

    private void doSomething(String s) {}

    public void action(final ActionEvent ae) {
        sessionBean.setSomeValue(getInputText());
        doSomething(getInputText());
    }

    GETTERS/SETTERS
}

@ManagedBean
@SessionScoped
public class SessionBean implements Serializable {

    private String someValue;

    GETTER/SETTER
}

Sinto que estou fazendo algo errado. Estou usando o Mojarra 2.1.2 Qualquer conselho é bem-vindo. Obrigado

UPDATE: O uso de EvaluExpressionGet nos dois métodos (init e action) funciona bem:

FacesContext context = FacesContext.getCurrentInstance();
SessionBean sessionBean = context.getApplication().evaluateExpressionGet(context,
    "#{sessionBean}", SessionBean.class);

questionAnswers(2)

yourAnswerToTheQuestion