Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Cannot Reproduce
-
5.3.8
-
None
Description
class org.apache.tapestry5.ioc.internal.services.AnnotationMemberValueVisitor
Line #64: final Object result = method.invoke(value);
If method return boolean, result wil be java.lang.Boolean not boolean.
In this case in rutime will be Caused by: java.lang.ClassCastException: java.lang.Boolean cannot be cast to java.lang.Enum.
I fix with:
MemberValue memberValue; if (method.getReturnType().isPrimitive()) { memberValue = Annotation.createMemberValue(this.constPool, this.classPool.get(method.getReturnType().getName())); } else { memberValue = Annotation.createMemberValue(this.constPool, this.classPool.get(result.getClass().getName())); }