[cdi-dev] Injecting classes with final package private methods

ant elder ant.elder at gmail.com
Fri May 8 05:37:11 EDT 2015


Hi CDI spec people,

I've an application that uses CDI which breaks when moving from Java 1.6 to
Java 1.7. The problem is that the application injects a
java.util.Hashtable, and in Java 1.7 a new method, initHashSeedAsNeeded,
was added to Hashtable and its a final method, so now the inject fails with:

javax.enterprise.inject.UnproxyableResolutionException: WebBeans with api
type with normal scope must be proxiable to inject. java.util.Hashtable has
final method final boolean java.util.Hashtable.initHashSeedAsNeeded(int)
CDI doesn't allow that.

Why i'm asking about this here is because initHashSeedAsNeeded has default
(package private) visibility, so i wondered if there was any chance that
the change in CDI-159 could be interpreted as also allowing injecting
classes with final package private visibility methods into classes in a
different package?

   ...ant
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/cdi-dev/attachments/20150508/643ba17b/attachment.html 


More information about the cdi-dev mailing list