List Info

Thread: RE: Problem with validation in Seam / ValueBindingValueExpression




RE: Problem with validation in Seam / ValueBindingValueExpression
country flaguser name
United States
2007-10-04 07:59:42
Hi all,

We have the same kind of problems, using the binding
attribute on a tr:table (Same context : Seam + Facelets +
Trinidad).

I have just seen that Facelets 1.1.14 release will correct
the version computing, but is there some "tricky"
mean to get round this problem ?

Thanks in advance,

Best regards


-- 
Stéphane




-----Message d'origine-----
De : Adam Winer [mailto:awinergmail.com] 
Envoyé : mardi 7 août 2007 23:21
À : MyFaces Discussion
Objet : Re: [Trinidad] Problem with validation in Seam /
ValueBindingValueExpression

Urgh.  There's no perfect way.  Overriding the
ValueHolderRule and EditableValueHolder rule in Trinidad
might be the simplest solution.

-- Adam


On 8/7/07, Stephen Friedrich <trinidadeekboom.com> wrote:
> Right, it's really facelets to blame - in
com.sun.facelets.util.FacesAPI:
>      public final static int
getComponentVersion(UIComponent c) {
>          return (version >= 12 && c
instanceof UIComponentBase) ? 12 : 11;
>      }
>
> Does anybody with more JSF/Trinidad experience know a
more reliable 
> way to determine the version?
>
> Stephen Friedrich wrote:
> > Thanks Adam,
> > sorry for the helpless comments. Please understand
that I am just a 
> > JSF user who tried to use Trinidad, Seam and
Facelets in 
> > combination.
> > Up to today I have never read about how unified EL
is implemented, 
> > so I just did not get that
ValueBindingValueExpression was only 
> > needed to support legacy JSF 1.1 functions.
> >
> > I tried to debug where the
ValueBindingValueExpression gets created 
> > and unfortunately that's were facelets seem to get
involved.
> >
> > My hunch is that
TrinidadComponentHandler.createMetaRuleset()
> > should add its own rules in front of the default
rules created in 
> > the facelets superclass
ComponentHandler.createMetaRuleset().
> > Currently facelets adds a ValueHolderRule that
ultimately creates 
> > the value binding.
> >
> > Does that make sense?
> >
> > Adam Winer wrote:
> >> On 8/7/07, trinidadeekboom.com
<trinidadeekboom.com> wrote:
> >>> Thanks Matthias,
> >>>
> >>> any comment on the actual bug?
> >>> Also was the ValueBindingValueExpression
introduced for 1.2 (and 
> >>> immediately marked deprecated) or was it
already 
> >>> removed/refactored on trunk?
> >>
> >> Trunk is JSF 1.1.  Ergo, it doesn't exist. 
We're using a branch 
> >> for 1.2 support.
> >>
> >> ValueBindingValueExpression is an adapter
class that wraps a 
> >> ValueBinding, and turns it into a
ValueExpression.  It's deprecated 
> >> because ValueBindings are deprecated - ergo,
avoid using it.
> >>
> >> We can't pass the ELContext into ValueBinding,
because ValueBinding 
> >> doesn't take ELContext, it takes
FacesContext.
> >> (We could be retrieving the FacesContext off
of the ELContext, but 
> >> it'd be the same FacesContext instance.)
> >>
> >> I've no idea what change you're recommending
in the code.
> >> My hunch is the major issue is that something
is creating a 
> >> ValueBinding instead of a ValueExpression. 
Could you find out what 
> >> bit of code is creating a ValueBinding, and
why?
> >>
> >> -- Adam
>
>

[1]

about | contact  Other archives ( Real Estate discussion Medical topics )