myfaces-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Simon Lessard" <simon.lessar...@gmail.com>
Subject Re: Instantiate a backing bean from other
Date Thu, 26 Jul 2007 14:32:31 GMT
Hello,

It depends on the use case:

1. If the bean needing the information for the other is request scoped, the
info is always needed and is unlikely to change over the request lifecycle,
using a managed-property to inject the value directly is most likely the
best way.
2. If the required value change over the request lifecycle or the bean is
more persistent than request and the requested value change over time, then
use a managed-property to inject the other bean itself.
3. Use the VariableResolver, it's more efficient than ValueBinding.


Regards,

~ Simon

On 7/26/07, Fabio Stracuzzi <fabiostracuzzi@gmail.com> wrote:
>
> FacesContext currentFacesContextInstance = FacesContext.getCurrentInstance
> ();
> You can test this code:
>
> ValueBinding valueBinding = currentFacesContextInstance.getApplication().createValueBinding("#{"
> + managedBeanName + "}");
>
> return valueBinding.getValue(currentFacesContextInstance);
>
> If Your managedBean has Session scope (or Application Scope), the returned
> bean is same istance, otherwise the method will create a new instance.
>
> Best regarde
> Fabio
>
>
> 2007/7/26, Angel Miralles Arevalo <anmiralles@yahoo.es>:
> >
> >  It isn't necesary managed bean in session scope, for example:
> >
> >
> > AuthorizationMembersGroupBean menGroup = (AuthorizationMembersGroupBean)
> > getApplication().createValueBinding(
> > "#{requestScope.authorizationMembersGroupBean}"
> > ).getValue(facesContext);
> >
> >
> >
> > getApplication().createValueBinding(
> > "#{requestScope.authorizationMembersGroupBean}").setValue(facesContext,menGroup);
> >
> >
> >
> > What you need to know is than you obtain the managed bean, alter it and
> > you have to update it in facesContext...the second line...
> >
> > ----- Mensaje original ----
> > De: daniel ccss < danielccss2@gmail.com>
> > Para: MyFaces Discussion <users@myfaces.apache.org>
> > Enviado: jueves, 26 de julio, 2007 15:56:25
> > Asunto: Instantiate a backing bean from other
> >
> > Is there a way to use a BackingBean from another BackingBean o another
> > class, the scope of the backing bean is session.
> >
> > For example I need to call the get method of a variable of a BackingBean
> > on another Backing Bean
> >
> > It is possible or I´m to crazy?
> >
> >
> >
> > ------------------------------
> >
> > Sé un Mejor Amante del Cine
> > ¿Quieres saber cómo? ¡Deja que otras personas te ayuden!
> > <http://us.rd.yahoo.com/mail/es/tagline/beabetter/*http://advision.webevents.yahoo.com/reto/entretenimiento.html>
> > .
> >
>
>
>
> --
> Ciao ciao
> Fabio

Mime
View raw message