[RESOLVIDO] Como faço um Backing Bean acessar outro Backing bean instanciado pelo JSF

Como faço um Backing Bean / Managed Bean acessar outro Backing bean instanciado pelo JSF?

Eu injeto meu backing bean com @inject mas não fica a mesma instancia, parece que é criada uma instancia nova.
Já tentei de varias formas fazer isso mas nada funciona, alguém pode me ajudar?

Meus bens são feitos com CDI e as classes estão marcadas com as anotações @SessionScoped e @Named

Você diz instância nova, pois os dados quando você acessa pelo outro managedBean são diferentes ?

é que assim, eu tenho essa linha do comando:

backinbeanInjetado.getRequestContext().execute("selectTipoMaterial.selectValue('2')");

se eu executo esse requestcontext diretamente do próprio bean é executado de boa, mas quando executo no outro bean onde tem a injeção não acontece nada na minha aplicação, nem executa a ação e nem da erro.

e o que esse execute faz ?
o que seriam selectTipoMaterial.selectValue(‘2’) ?

RequestContext é um recurso utilizado pelo primefaces para acessar os componentes da visão o comando execute executa comandos javascript, no caso o SelectTipoMaterial é o id do meu componente que é um SelectOneMenu, e selectvalue é uma ação js do componente.

alguem sabe fazer isso?

corrigindo não pelo primefaces, pelo JSF.

corrigindo não pelo primefaces, pelo JSF.[/quote]

humm não sabia, é que meu import é do primefaces:

import org.primefaces.context.RequestContext;
@ManagedProperty(value="#{managedBean}")
private ManagedBean managedBean;

public void setManagedBean(ManagedBean mb) {
    this.managedBean = mb;
}

Com isso você acessa qualquer valor do mb. Você deve prestar atenção no escopo deste mb.

[quote=netoSJB]Como faço um Backing Bean / Managed Bean acessar outro Backing bean instanciado pelo JSF?

Eu injeto meu backing bean com @inject mas não fica a mesma instancia, parece que é criada uma instancia nova.
Já tentei de varias formas fazer isso mas nada funciona, alguém pode me ajudar?

Meus bens são feitos com CDI e as classes estão marcadas com as anotações @SessionScoped e @Named[/quote]

[quote=benignoms][code]
@ManagedProperty(value="#{managedBean}")
private ManagedBean managedBean;

public void setManagedBean(ManagedBean mb) {
this.managedBean = mb;
}
[/code]

Com isso você acessa qualquer valor do mb. Você deve prestar atenção no escopo deste mb.

[quote=netoSJB]Como faço um Backing Bean / Managed Bean acessar outro Backing bean instanciado pelo JSF?

Eu injeto meu backing bean com @inject mas não fica a mesma instancia, parece que é criada uma instancia nova.
Já tentei de varias formas fazer isso mas nada funciona, alguém pode me ajudar?

Meus bens são feitos com CDI e as classes estão marcadas com as anotações @SessionScoped e @Named[/quote][/quote]

Tentei fazer desse jeito, mas da java.lang.NullPointerException

[quote=benignoms][code]
@ManagedProperty(value="#{managedBean}")
private ManagedBean managedBean;

public void setManagedBean(ManagedBean mb) {
this.managedBean = mb;
}
[/code]

Com isso você acessa qualquer valor do mb. Você deve prestar atenção no escopo deste mb.

[quote=netoSJB]Como faço um Backing Bean / Managed Bean acessar outro Backing bean instanciado pelo JSF?

Eu injeto meu backing bean com @inject mas não fica a mesma instancia, parece que é criada uma instancia nova.
Já tentei de varias formas fazer isso mas nada funciona, alguém pode me ajudar?

Meus bens são feitos com CDI e as classes estão marcadas com as anotações @SessionScoped e @Named[/quote][/quote]

Ah outra coisa, esse @ManagedProperty funciona só pra EJB (classes com @ManegedBean) mas eu utilizo CDI minhas classes controller estão marcadas com @Named

Pessoal, com @Inject já funciona sim, meu problema era com o AJAX, desculpe ai, problema resolvido