-
Bug
-
Resolution: Done
-
Minor
-
None
-
None
-
Workaround Exists
-
If a non-public class is used as the type of a delegate in a decorator, then the decorator cannot actually call any of the delegate methods. The following exception occurs unless the class is made public:
java.lang.reflect.InvocationTargetException
at org.jboss.webbeans.introspector.jlr.WBMethodImpl.invokeOnInstance(WBMethodImpl.java:198)
at org.jboss.webbeans.bean.proxy.DecoratorProxyMethodHandler.invoke(DecoratorProxyMethodHandler.java:83)
at org.jboss.jsr299.tck.tests.lookup.injectionpoint.Cat_$$javassist_0.hello(Cat$$_javassist_0.java)
at org.jboss.jsr299.tck.tests.lookup.injectionpoint.InjectionPointTest.testIsDelegate(InjectionPointTest.java:212)
at org.jboss.testharness.AbstractTest.run(AbstractTest.java:240)
Caused by: java.lang.IllegalAccessException: Class org.jboss.webbeans.bean.proxy.DecoratorProxyMethodHandler can not access a member of class org.jboss.jsr299.tck.tests.lookup.injectionpoint.Cat with modifiers "public"
at org.jboss.webbeans.bean.proxy.DecoratorProxyMethodHandler.invoke(DecoratorProxyMethodHandler.java:86)
at org.jboss.jsr299.tck.tests.lookup.injectionpoint.Cat_$$javassist_0.hello(Cat$$_javassist_0.java)
at org.jboss.jsr299.tck.tests.lookup.injectionpoint.CatDecorator.hello(CatDecorator.java:13)
... 37 more
... Removed 34 stack frames