You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@myfaces.apache.org by Mario Ivankovits <ma...@ops.co.at> on 2006/02/22 11:14:35 UTC

Urgent! Problems with type check for *Listener

Hi!

In UIComponentTagUtils the "Void"-check for the return-type of the
listener cant be evaluated e.g. within an dataTable - or any other
component using a var= attribute.
This is due to the fact that the var= attribute hasnt processed so far
and thus the getType() cant find the method (base is null)

javax.faces.el.EvaluationException: Cannot get type for expression
#{newPrm.changeFieldEnabledListener}
        at
org.apache.myfaces.el.MethodBindingImpl.getType(MethodBindingImpl.java:101)
        at
org.apache.myfaces.taglib.UIComponentTagUtils.setValueChangedListenerProperty(UIComponentTagUtils.java:318)
        at
org.apache.myfaces.taglib.UIComponentTagBase.setValueChangedListenerProperty(UIComponentTagBase.java:187)
        at
org.apache.myfaces.taglib.html.HtmlInputTagBase.setProperties(HtmlInputTagBase.java:60)
        at
org.apache.myfaces.taglib.html.HtmlSelectMenuTagBase.setProperties(HtmlSelectMenuTagBase.java:87)
        at
javax.faces.webapp.UIComponentTag.findComponent(UIComponentTag.java:574)
        at
javax.faces.webapp.UIComponentTag.doStartTag(UIComponentTag.java:312)
        at


What to do now?
I think the first thing to do is to remove these checks, later we can
find a better approach.

I guess the check can only be done when it will be fired (if possible
then) as the var= will only be available during encoding or decoding the
component.

---
Mario