You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@myfaces.apache.org by Matthias Wessendorf <ma...@apache.org> on 2007/12/21 11:46:07 UTC

Question on ValueExpression, with an empty ExpressionString (Jetty vs Tomcat)

Inside of Trinidad's EditableValueRenderer
(org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.EditableValueRenderer)

there getReadOnly(...), which is called by all inputXyz Renderers to
check if the component should be rendered "readOnly" or not
That method checks if the component is readOnly AND it also checks if
the underlying EL is readOnly.

If that method returns TRUE, the component is readOnly (and there for
a inputText isn't editable)...makes sense, so far...

Here is a "use-case"

<tr:inputText label="Label a)" value=""/>
(yes, may be stupid, but can happen...)

Since the getReadOnly() checks if the EL is readOnly... it does this as well:

ValueExpression ve = getValueExpression(bean);


In Jetty (jetty-6.1.2rc2), which uses Sun/Glassfish/RI EL
(com.sun.el.ValueExpressionImpl)
==>
It returns an object that is readOnly (which is correct) and the
getExpressionString is "" (empty).

In tomcat 6. which uses this EL-Impl
"org.apache.jasper.el.JspValueExpression", it returns NULL


Now, I wonder what the correct EL behavior is.
I tend to think, that Tomcat is right, because there is no
ExpressionString, so not a "real" Expression,
but others could have a different understanding of it.

What is your take on that ?

-- 
Matthias Wessendorf

further stuff:
blog: http://matthiaswessendorf.wordpress.com/
sessions: http://www.slideshare.net/mwessendorf
mail: matzew-at-apache-dot-org

Re: Question on ValueExpression, with an empty ExpressionString (Jetty vs Tomcat)

Posted by Matthias Wessendorf <ma...@apache.org>.
in case of jsf11;
value="" ==> null as well, not valueBinding-object

-M

On Dec 21, 2007 2:53 PM, Manfred Geiler <ma...@gmail.com> wrote:
> My personal feeling is that getValueExpression should NOT return null
> if explictly called with an empty String.
> However, this is something for the Unified EL (ie. JSP) specification.
> If this behaviour is unclear from the spec, it should be explicitly
> defined there.
>
> --Manfred
>
>
>
> On 12/21/07, Matthias Wessendorf <ma...@apache.org> wrote:
> > Inside of Trinidad's EditableValueRenderer
> > (org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.EditableValueRenderer)
> >
> > there getReadOnly(...), which is called by all inputXyz Renderers to
> > check if the component should be rendered "readOnly" or not
> > That method checks if the component is readOnly AND it also checks if
> > the underlying EL is readOnly.
> >
> > If that method returns TRUE, the component is readOnly (and there for
> > a inputText isn't editable)...makes sense, so far...
> >
> > Here is a "use-case"
> >
> > <tr:inputText label="Label a)" value=""/>
> > (yes, may be stupid, but can happen...)
> >
> > Since the getReadOnly() checks if the EL is readOnly... it does this as well:
> >
> > ValueExpression ve = getValueExpression(bean);
> >
> >
> > In Jetty (jetty-6.1.2rc2), which uses Sun/Glassfish/RI EL
> > (com.sun.el.ValueExpressionImpl)
> > ==>
> > It returns an object that is readOnly (which is correct) and the
> > getExpressionString is "" (empty).
> >
> > In tomcat 6. which uses this EL-Impl
> > "org.apache.jasper.el.JspValueExpression", it returns NULL
> >
> >
> > Now, I wonder what the correct EL behavior is.
> > I tend to think, that Tomcat is right, because there is no
> > ExpressionString, so not a "real" Expression,
> > but others could have a different understanding of it.
> >
> > What is your take on that ?
> >
> > --
> > Matthias Wessendorf
> >
> > further stuff:
> > blog: http://matthiaswessendorf.wordpress.com/
> > sessions: http://www.slideshare.net/mwessendorf
> > mail: matzew-at-apache-dot-org
> >
>
>
> --
> http://www.irian.at
> Your JSF powerhouse - JSF Consulting,
> Development and Courses in English and
> German
>
> Professional Support for Apache MyFaces
>



-- 
Matthias Wessendorf

further stuff:
blog: http://matthiaswessendorf.wordpress.com/
sessions: http://www.slideshare.net/mwessendorf
mail: matzew-at-apache-dot-org

Re: Question on ValueExpression, with an empty ExpressionString (Jetty vs Tomcat)

Posted by Manfred Geiler <ma...@gmail.com>.
My personal feeling is that getValueExpression should NOT return null
if explictly called with an empty String.
However, this is something for the Unified EL (ie. JSP) specification.
If this behaviour is unclear from the spec, it should be explicitly
defined there.

--Manfred


On 12/21/07, Matthias Wessendorf <ma...@apache.org> wrote:
> Inside of Trinidad's EditableValueRenderer
> (org.apache.myfaces.trinidadinternal.renderkit.core.xhtml.EditableValueRenderer)
>
> there getReadOnly(...), which is called by all inputXyz Renderers to
> check if the component should be rendered "readOnly" or not
> That method checks if the component is readOnly AND it also checks if
> the underlying EL is readOnly.
>
> If that method returns TRUE, the component is readOnly (and there for
> a inputText isn't editable)...makes sense, so far...
>
> Here is a "use-case"
>
> <tr:inputText label="Label a)" value=""/>
> (yes, may be stupid, but can happen...)
>
> Since the getReadOnly() checks if the EL is readOnly... it does this as well:
>
> ValueExpression ve = getValueExpression(bean);
>
>
> In Jetty (jetty-6.1.2rc2), which uses Sun/Glassfish/RI EL
> (com.sun.el.ValueExpressionImpl)
> ==>
> It returns an object that is readOnly (which is correct) and the
> getExpressionString is "" (empty).
>
> In tomcat 6. which uses this EL-Impl
> "org.apache.jasper.el.JspValueExpression", it returns NULL
>
>
> Now, I wonder what the correct EL behavior is.
> I tend to think, that Tomcat is right, because there is no
> ExpressionString, so not a "real" Expression,
> but others could have a different understanding of it.
>
> What is your take on that ?
>
> --
> Matthias Wessendorf
>
> further stuff:
> blog: http://matthiaswessendorf.wordpress.com/
> sessions: http://www.slideshare.net/mwessendorf
> mail: matzew-at-apache-dot-org
>


-- 
http://www.irian.at
Your JSF powerhouse - JSF Consulting,
Development and Courses in English and
German

Professional Support for Apache MyFaces