[weld-dev] javax.el.ExpressionFactory has final methods! CDI doesn't allow that

Martin Kouba mkouba at redhat.com
Wed Oct 21 06:50:18 EDT 2015


Hi Emily,

commments inline.

Dne 21.10.2015 v 11:02 Emily Jiang napsal(a):
> CDI specification does not allow proxying a class with non-private final
> methods. The java.util.Hashtable class has a
> non-private final method added to the class in later versions
> of Java, so a CDI application that previously worked may break
> when updating the Java level.

Just for the record: what's the name of the method?

>
> This issue was logged in CDI-527.
>
> OpenWebBeans fixed this via the jira (https://issues.apache.org/jira/browse/OWB-616).

OWB-616 does not fix CDI-527 but CDI-159, i.e. a private final method 
does not cause a deployment problem. This works in Weld too. On the 
other hand, CDI-527 is still an open issue so we can't simply fix it. In 
theory, we could add a new feature of a non-portable mode. But 
non-portable mode is not intended to be commonly used. It's kind of a 
workaround.

>
> Can Weld fix this in the 2.3 or 2.2 trunk?
>
>
> --
> Thanks
> Emily
> =================
> Emily Jiang
> ejiang at apache.org <mailto:ejiang at apache.org>
>
>
> _______________________________________________
> weld-dev mailing list
> weld-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/weld-dev
>

-- 
Martin Kouba
Software Engineer
Red Hat, Czech Republic


More information about the weld-dev mailing list