Recuperar valores de managedbean

Ola,

Sou iniciante em JSF e gostaria de saber como faço para pegar um managedbean que encontra-se na sessao, atraves de outro managedbean.

[code]AtividadesFerramenta atividadesFerramenta = (AtividadesFerramenta) recuperarBean("#{atividadesFerramenta}", AtividadesFerramenta.class);

public Object recuperarBean(String expressaoELBean, Class<?> classeBean) {
FacesContext fCtx = FacesContext.getCurrentInstance();
ELContext elCtx = fCtx.getELContext();
ExpressionFactory ef = fCtx.getApplication().getExpressionFactory();
ValueExpression ve = ef.createValueExpression(elCtx, expressaoELBean, classeBean);
return ve.getValue(elCtx);
}[/code]

Atraves do uso desse metodo, eu recupero o bean que eu quero, mas pelo q me pareceu, eu recebo uma nova instancia do bean, quando na verdade eu gostaria de receber o bean ja preenchido com os atributos que foram anteriormente preenchidos e estao na sessao. (ambos os beans tem escopo session).

Obrigado por qualquer ajuda.

Abraços,
Gustavo Barbosa

	/**
	 * Recupera um bean gerenciado pelo contexto atual.
	 * @param name Nome do bean.
	 * @return Bean encontrado ou &lt;code&gt;null&lt;/code&gt; se não houver um bean com o nome especificado.
	 */
	public static Object getBean(String nome) {
		Object bean = null;
		
		if (nome == null || nome.equals(""))
			throw new IllegalArgumentException("Parâmetro inválido: nome.");
		
		FacesContext contexto = FacesContext.getCurrentInstance();
		Application app = contexto.getApplication();
		bean = app.createValueBinding("#{" +  nome + "}").getValue(contexto);
		
		return bean;
	}
	
	/**
	 * Atribui um bean ao contexto atual da aplicação.
	 * @param nome Nome do bean
	 * @param bean Bean a ser mantido no contexto.
	 */
	public static void setBean(String nome, Object bean) {
		if (nome == null || nome.equals(""))
			throw new IllegalArgumentException("Parâmetro inválido: nome.");
		
		if (bean == null)
			throw new IllegalArgumentException("Parâmetro inválido: bean.");
		
		FacesContext contexto = FacesContext.getCurrentInstance();
		Application app = contexto.getApplication();
		app.createValueBinding("#{" + nome + "}").setValue(contexto, bean);
	}