6 Replies Latest reply on Mar 24, 2014 8:08 AM by Martin Kouba

    WeldClientProxy and protected methods

    Simon Kulessa Newbie

      I have recently updated our JSF (Trinidad) webapp from weld 1.1.8.Final to 2.1.2.Final.

      Now while starting the UI I get the following exception:

       

      org.apache.jasper.el.JspPropertyNotFoundException: ... '#{testBean.dataTable}' Property 'dataTable' not readable on type test.TestBean$Proxy$_$$_WeldClientProxy

          at org.apache.jasper.el.JspValueExpression.getValue(JspValueExpression.java:109)

          at com.sun.faces.application.ApplicationImpl.createComponentApplyAnnotations(ApplicationImpl.java:1941)

          at com.sun.faces.application.ApplicationImpl.createComponent(ApplicationImpl.java:447)

          at org.jboss.weld.environment.servlet.jsf.ForwardingApplication.createComponent(ForwardingApplication.java:113)

          at javax.faces.webapp.UIComponentELTag.createComponent(UIComponentELTag.java:222)

          at org.apache.myfaces.trinidad.webapp.UIXComponentELTag.createComponent(UIXComponentELTag.java:223)

          at javax.faces.webapp.UIComponentClassicTagBase.createChild(UIComponentClassicTagBase.java:506)

          at javax.faces.webapp.UIComponentClassicTagBase.findComponent(UIComponentClassicTagBase.java:744)

          at javax.faces.webapp.UIComponentClassicTagBase.doStartTag(UIComponentClassicTagBase.java:1311)

       

      The problem seems to be that the getDataTable Method is protected, if I put the access level to public it seems to work fine.

       

      Is this a bug in the newer version?

      I did not find anything in the weld-documentation that protected methods are not supposed to be injectable on a proxy object.