I am upgrading my prototype to AS7, CDI, JSF2 and Richfaces 4. It seems like Weld CDI does not allow EL method expressions. These worked fine with the Glassfish version of JSF 2 and EL. For example the following .xhtml snippet generates the following runtime error:
<h:selectOneListbox id="profile_nav_type_list" value="#{profileAction.selectedType}" styleClass="profile_type_select"> | |
<f:selectItems value="#{profileAction.profileSelects}"/> | |
<f:ajax event="click" execute="#{profileAction.addProfile()}" render="profileForm" bypassUpdates="false" /> | |
</h:selectOneListbox> |
The error:
Servlet.service() for servlet Faces Servlet threw exception: javax.el.PropertyNotFoundException: /layout/profile/profile_nav_panel.xhtml @45,114 execute="#{profileAction.addProfile()}": The class 'com.zensa.vault.ui.action.ProfileHandler$Proxy$_$$_WeldClientProxy' does not have the property 'addProfile'.
I would appreciate understanding what I need to do - if I am doing something wrong, or if there is a workaround.I really hope that I am doing something wrong, as not supporting EL method expressions seems like a step backwards.It should also be noted the the Jboss Tools 3.3 in eclipse through out validation exceptions for all EL method expressions.