You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@geronimo.apache.org by "Alexey Kaigorodov (JIRA)" <ji...@apache.org> on 2009/11/03 09:32:02 UTC

[jira] Created: (GERONIMO-4945) Unable to deploy ejb with custom annotation

Unable to deploy ejb with custom annotation
-------------------------------------------

                 Key: GERONIMO-4945
                 URL: https://issues.apache.org/jira/browse/GERONIMO-4945
             Project: Geronimo
          Issue Type: Bug
      Security Level: public (Regular issues)
          Components: OpenEJB
    Affects Versions: 2.2
            Reporter: Alexey Kaigorodov


Simple tast case:

@Stateless
@Local(Test.class)
@Custom(type = CustomType.A)
public class TestBean implements Test {
  @Override
  public void foo() {
  }
}

@Target(ElementType.TYPE) 
@Retention(RetentionPolicy.RUNTIME)
public @interface Custom {
  CustomType[] type() default {}; // works fine for non-array CustomType type();
}

public enum CustomType {
  A, B
}

geronimo.log:

2009-11-03 14:05:17,138 ERROR [Deployer] Deployment failed due to 
java.lang.ArrayStoreException: sun.reflect.annotation.AnnotationTypeMismatchExceptionProxy
	at sun.reflect.annotation.AnnotationParser.parseEnumArray(AnnotationParser.java:673)
	at sun.reflect.annotation.AnnotationParser.parseArray(AnnotationParser.java:462)
	at sun.reflect.annotation.AnnotationParser.parseMemberValue(AnnotationParser.java:286)
	at sun.reflect.annotation.AnnotationParser.parseAnnotation(AnnotationParser.java:222)
	at sun.reflect.annotation.AnnotationParser.parseAnnotations2(AnnotationParser.java:69)
	at sun.reflect.annotation.AnnotationParser.parseAnnotations(AnnotationParser.java:52)
	at java.lang.Class.initAnnotationsIfNecessary(Class.java:3070)
	at java.lang.Class.getAnnotation(Class.java:3029)
	at java.lang.Class.isAnnotationPresent(Class.java:3042)
	at org.apache.xbean.finder.ClassFinder.findAnnotatedClasses(ClassFinder.java:241)
	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:459)
	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:253)
	at org.apache.openejb.config.AnnotationDeployer.deploy(AnnotationDeployer.java:188)
	at org.apache.openejb.config.ConfigurationFactory$Chain.deploy(ConfigurationFactory.java:247)
	at org.apache.openejb.config.ConfigurationFactory.configureApplication(ConfigurationFactory.java:601)
	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.configureApplication(EjbModuleBuilder.java:635)
	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.getEjbJarInfo(EjbModuleBuilder.java:568)
	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.initContext(EjbModuleBuilder.java:493)
	at org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfiguration(EARConfigBuilder.java:592)
	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:257)
	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:136)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
	at org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:342)
	at sun.reflect.GeneratedMethodAccessor159.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
	at org.apache.geronimo.system.jmx.MBeanGBeanBridge.invoke(MBeanGBeanBridge.java:172)
	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
	at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
	at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1426)
	at javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:72)
	at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1264)
	at java.security.AccessController.doPrivileged(Native Method)
	at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1366)
	at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:788)
	at sun.reflect.GeneratedMethodAccessor142.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
	at sun.rmi.transport.Transport$1.run(Transport.java:159)
	at java.security.AccessController.doPrivileged(Native Method)
	at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
	at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
	at java.lang.Thread.run(Thread.java:619)

It seems to related with https://issues.apache.org/jira/browse/OPENEJB-951


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (GERONIMO-4945) Unable to deploy ejb with custom annotation

Posted by "Ben Liang (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/GERONIMO-4945?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12866945#action_12866945 ] 

Ben Liang commented on GERONIMO-4945:
-------------------------------------

Hi Rex,

Thanks a lot for your comments. 

I found that problem too , I have looked into your patch and now I know how to deal with it.

Ben

> Unable to deploy ejb with custom annotation
> -------------------------------------------
>
>                 Key: GERONIMO-4945
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-4945
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: OpenEJB
>    Affects Versions: 2.2
>            Reporter: Alexey Kaigorodov
>            Assignee: Rex Wang
>            Priority: Critical
>             Fix For: 2.2.1
>
>         Attachments: G4945.patch, test-custom-annotation-ejb-1.0.0-sources.jar, test-custom-annotation-ejb-1.0.0.jar
>
>
> Simple tast case:
> @Stateless
> @Local(Test.class)
> @Custom(type = CustomType.A)
> public class TestBean implements Test {
>   @Override
>   public void foo() {
>   }
> }
> @Target(ElementType.TYPE) 
> @Retention(RetentionPolicy.RUNTIME)
> public @interface Custom {
>   CustomType[] type() default {}; // works fine for non-array CustomType type();
> }
> public enum CustomType {
>   A, B
> }
> geronimo.log:
> 2009-11-03 14:05:17,138 ERROR [Deployer] Deployment failed due to 
> java.lang.ArrayStoreException: sun.reflect.annotation.AnnotationTypeMismatchExceptionProxy
> 	at sun.reflect.annotation.AnnotationParser.parseEnumArray(AnnotationParser.java:673)
> 	at sun.reflect.annotation.AnnotationParser.parseArray(AnnotationParser.java:462)
> 	at sun.reflect.annotation.AnnotationParser.parseMemberValue(AnnotationParser.java:286)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotation(AnnotationParser.java:222)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotations2(AnnotationParser.java:69)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotations(AnnotationParser.java:52)
> 	at java.lang.Class.initAnnotationsIfNecessary(Class.java:3070)
> 	at java.lang.Class.getAnnotation(Class.java:3029)
> 	at java.lang.Class.isAnnotationPresent(Class.java:3042)
> 	at org.apache.xbean.finder.ClassFinder.findAnnotatedClasses(ClassFinder.java:241)
> 	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:459)
> 	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:253)
> 	at org.apache.openejb.config.AnnotationDeployer.deploy(AnnotationDeployer.java:188)
> 	at org.apache.openejb.config.ConfigurationFactory$Chain.deploy(ConfigurationFactory.java:247)
> 	at org.apache.openejb.config.ConfigurationFactory.configureApplication(ConfigurationFactory.java:601)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.configureApplication(EjbModuleBuilder.java:635)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.getEjbJarInfo(EjbModuleBuilder.java:568)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.initContext(EjbModuleBuilder.java:493)
> 	at org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfiguration(EARConfigBuilder.java:592)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:257)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:136)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
> 	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
> 	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
> 	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
> 	at org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:342)
> 	at sun.reflect.GeneratedMethodAccessor159.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
> 	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
> 	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
> 	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
> 	at org.apache.geronimo.system.jmx.MBeanGBeanBridge.invoke(MBeanGBeanBridge.java:172)
> 	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
> 	at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
> 	at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1426)
> 	at javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:72)
> 	at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1264)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1366)
> 	at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:788)
> 	at sun.reflect.GeneratedMethodAccessor142.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
> 	at sun.rmi.transport.Transport$1.run(Transport.java:159)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
> 	at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
> 	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
> 	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> 	at java.lang.Thread.run(Thread.java:619)
> It seems to related with https://issues.apache.org/jira/browse/OPENEJB-951

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Assigned: (GERONIMO-4945) Unable to deploy ejb with custom annotation

Posted by "Rex Wang (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/GERONIMO-4945?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Rex Wang reassigned GERONIMO-4945:
----------------------------------

    Assignee: Rex Wang

> Unable to deploy ejb with custom annotation
> -------------------------------------------
>
>                 Key: GERONIMO-4945
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-4945
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: OpenEJB
>    Affects Versions: 2.2
>            Reporter: Alexey Kaigorodov
>            Assignee: Rex Wang
>            Priority: Critical
>             Fix For: 2.2.1
>
>         Attachments: G4945.patch, test-custom-annotation-ejb-1.0.0-sources.jar, test-custom-annotation-ejb-1.0.0.jar
>
>
> Simple tast case:
> @Stateless
> @Local(Test.class)
> @Custom(type = CustomType.A)
> public class TestBean implements Test {
>   @Override
>   public void foo() {
>   }
> }
> @Target(ElementType.TYPE) 
> @Retention(RetentionPolicy.RUNTIME)
> public @interface Custom {
>   CustomType[] type() default {}; // works fine for non-array CustomType type();
> }
> public enum CustomType {
>   A, B
> }
> geronimo.log:
> 2009-11-03 14:05:17,138 ERROR [Deployer] Deployment failed due to 
> java.lang.ArrayStoreException: sun.reflect.annotation.AnnotationTypeMismatchExceptionProxy
> 	at sun.reflect.annotation.AnnotationParser.parseEnumArray(AnnotationParser.java:673)
> 	at sun.reflect.annotation.AnnotationParser.parseArray(AnnotationParser.java:462)
> 	at sun.reflect.annotation.AnnotationParser.parseMemberValue(AnnotationParser.java:286)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotation(AnnotationParser.java:222)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotations2(AnnotationParser.java:69)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotations(AnnotationParser.java:52)
> 	at java.lang.Class.initAnnotationsIfNecessary(Class.java:3070)
> 	at java.lang.Class.getAnnotation(Class.java:3029)
> 	at java.lang.Class.isAnnotationPresent(Class.java:3042)
> 	at org.apache.xbean.finder.ClassFinder.findAnnotatedClasses(ClassFinder.java:241)
> 	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:459)
> 	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:253)
> 	at org.apache.openejb.config.AnnotationDeployer.deploy(AnnotationDeployer.java:188)
> 	at org.apache.openejb.config.ConfigurationFactory$Chain.deploy(ConfigurationFactory.java:247)
> 	at org.apache.openejb.config.ConfigurationFactory.configureApplication(ConfigurationFactory.java:601)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.configureApplication(EjbModuleBuilder.java:635)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.getEjbJarInfo(EjbModuleBuilder.java:568)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.initContext(EjbModuleBuilder.java:493)
> 	at org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfiguration(EARConfigBuilder.java:592)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:257)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:136)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
> 	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
> 	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
> 	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
> 	at org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:342)
> 	at sun.reflect.GeneratedMethodAccessor159.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
> 	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
> 	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
> 	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
> 	at org.apache.geronimo.system.jmx.MBeanGBeanBridge.invoke(MBeanGBeanBridge.java:172)
> 	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
> 	at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
> 	at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1426)
> 	at javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:72)
> 	at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1264)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1366)
> 	at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:788)
> 	at sun.reflect.GeneratedMethodAccessor142.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
> 	at sun.rmi.transport.Transport$1.run(Transport.java:159)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
> 	at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
> 	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
> 	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> 	at java.lang.Thread.run(Thread.java:619)
> It seems to related with https://issues.apache.org/jira/browse/OPENEJB-951

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (GERONIMO-4945) Unable to deploy ejb with custom annotation

Posted by "Rex Wang (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/GERONIMO-4945?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12866511#action_12866511 ] 

Rex Wang commented on GERONIMO-4945:
------------------------------------

Hi Ben,

The root cause i think is that the annotation class is loaded by the app classloader, but the enum class is loaded by the temporary class loaded. Your patch introduces a regression issue which fixed by Jarek in rev801054.

-Rex

> Unable to deploy ejb with custom annotation
> -------------------------------------------
>
>                 Key: GERONIMO-4945
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-4945
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: OpenEJB
>    Affects Versions: 2.2
>            Reporter: Alexey Kaigorodov
>            Assignee: Rex Wang
>            Priority: Critical
>             Fix For: 2.2.1
>
>         Attachments: G4945.patch, test-custom-annotation-ejb-1.0.0-sources.jar, test-custom-annotation-ejb-1.0.0.jar
>
>
> Simple tast case:
> @Stateless
> @Local(Test.class)
> @Custom(type = CustomType.A)
> public class TestBean implements Test {
>   @Override
>   public void foo() {
>   }
> }
> @Target(ElementType.TYPE) 
> @Retention(RetentionPolicy.RUNTIME)
> public @interface Custom {
>   CustomType[] type() default {}; // works fine for non-array CustomType type();
> }
> public enum CustomType {
>   A, B
> }
> geronimo.log:
> 2009-11-03 14:05:17,138 ERROR [Deployer] Deployment failed due to 
> java.lang.ArrayStoreException: sun.reflect.annotation.AnnotationTypeMismatchExceptionProxy
> 	at sun.reflect.annotation.AnnotationParser.parseEnumArray(AnnotationParser.java:673)
> 	at sun.reflect.annotation.AnnotationParser.parseArray(AnnotationParser.java:462)
> 	at sun.reflect.annotation.AnnotationParser.parseMemberValue(AnnotationParser.java:286)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotation(AnnotationParser.java:222)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotations2(AnnotationParser.java:69)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotations(AnnotationParser.java:52)
> 	at java.lang.Class.initAnnotationsIfNecessary(Class.java:3070)
> 	at java.lang.Class.getAnnotation(Class.java:3029)
> 	at java.lang.Class.isAnnotationPresent(Class.java:3042)
> 	at org.apache.xbean.finder.ClassFinder.findAnnotatedClasses(ClassFinder.java:241)
> 	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:459)
> 	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:253)
> 	at org.apache.openejb.config.AnnotationDeployer.deploy(AnnotationDeployer.java:188)
> 	at org.apache.openejb.config.ConfigurationFactory$Chain.deploy(ConfigurationFactory.java:247)
> 	at org.apache.openejb.config.ConfigurationFactory.configureApplication(ConfigurationFactory.java:601)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.configureApplication(EjbModuleBuilder.java:635)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.getEjbJarInfo(EjbModuleBuilder.java:568)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.initContext(EjbModuleBuilder.java:493)
> 	at org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfiguration(EARConfigBuilder.java:592)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:257)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:136)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
> 	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
> 	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
> 	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
> 	at org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:342)
> 	at sun.reflect.GeneratedMethodAccessor159.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
> 	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
> 	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
> 	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
> 	at org.apache.geronimo.system.jmx.MBeanGBeanBridge.invoke(MBeanGBeanBridge.java:172)
> 	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
> 	at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
> 	at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1426)
> 	at javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:72)
> 	at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1264)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1366)
> 	at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:788)
> 	at sun.reflect.GeneratedMethodAccessor142.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
> 	at sun.rmi.transport.Transport$1.run(Transport.java:159)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
> 	at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
> 	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
> 	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> 	at java.lang.Thread.run(Thread.java:619)
> It seems to related with https://issues.apache.org/jira/browse/OPENEJB-951

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (GERONIMO-4945) Unable to deploy ejb with custom annotation

Posted by "Alexey Kaigorodov (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/GERONIMO-4945?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Alexey Kaigorodov updated GERONIMO-4945:
----------------------------------------

    Attachment: test-custom-annotation-ejb-1.0.0-sources.jar
                test-custom-annotation-ejb-1.0.0.jar

compiled sample

> Unable to deploy ejb with custom annotation
> -------------------------------------------
>
>                 Key: GERONIMO-4945
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-4945
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: OpenEJB
>    Affects Versions: 2.2
>            Reporter: Alexey Kaigorodov
>         Attachments: test-custom-annotation-ejb-1.0.0-sources.jar, test-custom-annotation-ejb-1.0.0.jar
>
>
> Simple tast case:
> @Stateless
> @Local(Test.class)
> @Custom(type = CustomType.A)
> public class TestBean implements Test {
>   @Override
>   public void foo() {
>   }
> }
> @Target(ElementType.TYPE) 
> @Retention(RetentionPolicy.RUNTIME)
> public @interface Custom {
>   CustomType[] type() default {}; // works fine for non-array CustomType type();
> }
> public enum CustomType {
>   A, B
> }
> geronimo.log:
> 2009-11-03 14:05:17,138 ERROR [Deployer] Deployment failed due to 
> java.lang.ArrayStoreException: sun.reflect.annotation.AnnotationTypeMismatchExceptionProxy
> 	at sun.reflect.annotation.AnnotationParser.parseEnumArray(AnnotationParser.java:673)
> 	at sun.reflect.annotation.AnnotationParser.parseArray(AnnotationParser.java:462)
> 	at sun.reflect.annotation.AnnotationParser.parseMemberValue(AnnotationParser.java:286)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotation(AnnotationParser.java:222)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotations2(AnnotationParser.java:69)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotations(AnnotationParser.java:52)
> 	at java.lang.Class.initAnnotationsIfNecessary(Class.java:3070)
> 	at java.lang.Class.getAnnotation(Class.java:3029)
> 	at java.lang.Class.isAnnotationPresent(Class.java:3042)
> 	at org.apache.xbean.finder.ClassFinder.findAnnotatedClasses(ClassFinder.java:241)
> 	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:459)
> 	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:253)
> 	at org.apache.openejb.config.AnnotationDeployer.deploy(AnnotationDeployer.java:188)
> 	at org.apache.openejb.config.ConfigurationFactory$Chain.deploy(ConfigurationFactory.java:247)
> 	at org.apache.openejb.config.ConfigurationFactory.configureApplication(ConfigurationFactory.java:601)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.configureApplication(EjbModuleBuilder.java:635)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.getEjbJarInfo(EjbModuleBuilder.java:568)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.initContext(EjbModuleBuilder.java:493)
> 	at org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfiguration(EARConfigBuilder.java:592)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:257)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:136)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
> 	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
> 	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
> 	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
> 	at org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:342)
> 	at sun.reflect.GeneratedMethodAccessor159.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
> 	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
> 	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
> 	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
> 	at org.apache.geronimo.system.jmx.MBeanGBeanBridge.invoke(MBeanGBeanBridge.java:172)
> 	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
> 	at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
> 	at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1426)
> 	at javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:72)
> 	at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1264)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1366)
> 	at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:788)
> 	at sun.reflect.GeneratedMethodAccessor142.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
> 	at sun.rmi.transport.Transport$1.run(Transport.java:159)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
> 	at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
> 	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
> 	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> 	at java.lang.Thread.run(Thread.java:619)
> It seems to related with https://issues.apache.org/jira/browse/OPENEJB-951

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (GERONIMO-4945) Unable to deploy ejb with custom annotation

Posted by "liangkun (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/GERONIMO-4945?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

liangkun updated GERONIMO-4945:
-------------------------------

    Attachment: G4945.patch

> Unable to deploy ejb with custom annotation
> -------------------------------------------
>
>                 Key: GERONIMO-4945
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-4945
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: OpenEJB
>    Affects Versions: 2.2
>            Reporter: Alexey Kaigorodov
>            Priority: Critical
>             Fix For: 2.2.1
>
>         Attachments: G4945.patch, test-custom-annotation-ejb-1.0.0-sources.jar, test-custom-annotation-ejb-1.0.0.jar
>
>
> Simple tast case:
> @Stateless
> @Local(Test.class)
> @Custom(type = CustomType.A)
> public class TestBean implements Test {
>   @Override
>   public void foo() {
>   }
> }
> @Target(ElementType.TYPE) 
> @Retention(RetentionPolicy.RUNTIME)
> public @interface Custom {
>   CustomType[] type() default {}; // works fine for non-array CustomType type();
> }
> public enum CustomType {
>   A, B
> }
> geronimo.log:
> 2009-11-03 14:05:17,138 ERROR [Deployer] Deployment failed due to 
> java.lang.ArrayStoreException: sun.reflect.annotation.AnnotationTypeMismatchExceptionProxy
> 	at sun.reflect.annotation.AnnotationParser.parseEnumArray(AnnotationParser.java:673)
> 	at sun.reflect.annotation.AnnotationParser.parseArray(AnnotationParser.java:462)
> 	at sun.reflect.annotation.AnnotationParser.parseMemberValue(AnnotationParser.java:286)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotation(AnnotationParser.java:222)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotations2(AnnotationParser.java:69)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotations(AnnotationParser.java:52)
> 	at java.lang.Class.initAnnotationsIfNecessary(Class.java:3070)
> 	at java.lang.Class.getAnnotation(Class.java:3029)
> 	at java.lang.Class.isAnnotationPresent(Class.java:3042)
> 	at org.apache.xbean.finder.ClassFinder.findAnnotatedClasses(ClassFinder.java:241)
> 	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:459)
> 	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:253)
> 	at org.apache.openejb.config.AnnotationDeployer.deploy(AnnotationDeployer.java:188)
> 	at org.apache.openejb.config.ConfigurationFactory$Chain.deploy(ConfigurationFactory.java:247)
> 	at org.apache.openejb.config.ConfigurationFactory.configureApplication(ConfigurationFactory.java:601)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.configureApplication(EjbModuleBuilder.java:635)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.getEjbJarInfo(EjbModuleBuilder.java:568)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.initContext(EjbModuleBuilder.java:493)
> 	at org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfiguration(EARConfigBuilder.java:592)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:257)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:136)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
> 	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
> 	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
> 	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
> 	at org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:342)
> 	at sun.reflect.GeneratedMethodAccessor159.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
> 	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
> 	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
> 	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
> 	at org.apache.geronimo.system.jmx.MBeanGBeanBridge.invoke(MBeanGBeanBridge.java:172)
> 	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
> 	at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
> 	at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1426)
> 	at javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:72)
> 	at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1264)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1366)
> 	at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:788)
> 	at sun.reflect.GeneratedMethodAccessor142.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
> 	at sun.rmi.transport.Transport$1.run(Transport.java:159)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
> 	at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
> 	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
> 	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> 	at java.lang.Thread.run(Thread.java:619)
> It seems to related with https://issues.apache.org/jira/browse/OPENEJB-951

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (GERONIMO-4945) Unable to deploy ejb with custom annotation

Posted by "Alexey Kaigorodov (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/GERONIMO-4945?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Alexey Kaigorodov updated GERONIMO-4945:
----------------------------------------

    Priority: Critical  (was: Major)

> Unable to deploy ejb with custom annotation
> -------------------------------------------
>
>                 Key: GERONIMO-4945
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-4945
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: OpenEJB
>    Affects Versions: 2.2
>            Reporter: Alexey Kaigorodov
>            Priority: Critical
>         Attachments: test-custom-annotation-ejb-1.0.0-sources.jar, test-custom-annotation-ejb-1.0.0.jar
>
>
> Simple tast case:
> @Stateless
> @Local(Test.class)
> @Custom(type = CustomType.A)
> public class TestBean implements Test {
>   @Override
>   public void foo() {
>   }
> }
> @Target(ElementType.TYPE) 
> @Retention(RetentionPolicy.RUNTIME)
> public @interface Custom {
>   CustomType[] type() default {}; // works fine for non-array CustomType type();
> }
> public enum CustomType {
>   A, B
> }
> geronimo.log:
> 2009-11-03 14:05:17,138 ERROR [Deployer] Deployment failed due to 
> java.lang.ArrayStoreException: sun.reflect.annotation.AnnotationTypeMismatchExceptionProxy
> 	at sun.reflect.annotation.AnnotationParser.parseEnumArray(AnnotationParser.java:673)
> 	at sun.reflect.annotation.AnnotationParser.parseArray(AnnotationParser.java:462)
> 	at sun.reflect.annotation.AnnotationParser.parseMemberValue(AnnotationParser.java:286)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotation(AnnotationParser.java:222)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotations2(AnnotationParser.java:69)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotations(AnnotationParser.java:52)
> 	at java.lang.Class.initAnnotationsIfNecessary(Class.java:3070)
> 	at java.lang.Class.getAnnotation(Class.java:3029)
> 	at java.lang.Class.isAnnotationPresent(Class.java:3042)
> 	at org.apache.xbean.finder.ClassFinder.findAnnotatedClasses(ClassFinder.java:241)
> 	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:459)
> 	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:253)
> 	at org.apache.openejb.config.AnnotationDeployer.deploy(AnnotationDeployer.java:188)
> 	at org.apache.openejb.config.ConfigurationFactory$Chain.deploy(ConfigurationFactory.java:247)
> 	at org.apache.openejb.config.ConfigurationFactory.configureApplication(ConfigurationFactory.java:601)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.configureApplication(EjbModuleBuilder.java:635)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.getEjbJarInfo(EjbModuleBuilder.java:568)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.initContext(EjbModuleBuilder.java:493)
> 	at org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfiguration(EARConfigBuilder.java:592)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:257)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:136)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
> 	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
> 	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
> 	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
> 	at org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:342)
> 	at sun.reflect.GeneratedMethodAccessor159.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
> 	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
> 	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
> 	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
> 	at org.apache.geronimo.system.jmx.MBeanGBeanBridge.invoke(MBeanGBeanBridge.java:172)
> 	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
> 	at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
> 	at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1426)
> 	at javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:72)
> 	at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1264)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1366)
> 	at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:788)
> 	at sun.reflect.GeneratedMethodAccessor142.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
> 	at sun.rmi.transport.Transport$1.run(Transport.java:159)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
> 	at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
> 	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
> 	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> 	at java.lang.Thread.run(Thread.java:619)
> It seems to related with https://issues.apache.org/jira/browse/OPENEJB-951

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Closed: (GERONIMO-4945) Unable to deploy ejb with custom annotation

Posted by "viola.lu (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/GERONIMO-4945?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

viola.lu closed GERONIMO-4945.
------------------------------


Verification done, close it.

> Unable to deploy ejb with custom annotation
> -------------------------------------------
>
>                 Key: GERONIMO-4945
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-4945
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: OpenEJB
>    Affects Versions: 2.2
>            Reporter: Alexey Kaigorodov
>            Assignee: Rex Wang
>            Priority: Critical
>             Fix For: 2.1.6, 2.2.1
>
>         Attachments: G4945.patch, test-custom-annotation-ejb-1.0.0-sources.jar, test-custom-annotation-ejb-1.0.0.jar
>
>
> Simple tast case:
> @Stateless
> @Local(Test.class)
> @Custom(type = CustomType.A)
> public class TestBean implements Test {
>   @Override
>   public void foo() {
>   }
> }
> @Target(ElementType.TYPE) 
> @Retention(RetentionPolicy.RUNTIME)
> public @interface Custom {
>   CustomType[] type() default {}; // works fine for non-array CustomType type();
> }
> public enum CustomType {
>   A, B
> }
> geronimo.log:
> 2009-11-03 14:05:17,138 ERROR [Deployer] Deployment failed due to 
> java.lang.ArrayStoreException: sun.reflect.annotation.AnnotationTypeMismatchExceptionProxy
> 	at sun.reflect.annotation.AnnotationParser.parseEnumArray(AnnotationParser.java:673)
> 	at sun.reflect.annotation.AnnotationParser.parseArray(AnnotationParser.java:462)
> 	at sun.reflect.annotation.AnnotationParser.parseMemberValue(AnnotationParser.java:286)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotation(AnnotationParser.java:222)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotations2(AnnotationParser.java:69)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotations(AnnotationParser.java:52)
> 	at java.lang.Class.initAnnotationsIfNecessary(Class.java:3070)
> 	at java.lang.Class.getAnnotation(Class.java:3029)
> 	at java.lang.Class.isAnnotationPresent(Class.java:3042)
> 	at org.apache.xbean.finder.ClassFinder.findAnnotatedClasses(ClassFinder.java:241)
> 	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:459)
> 	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:253)
> 	at org.apache.openejb.config.AnnotationDeployer.deploy(AnnotationDeployer.java:188)
> 	at org.apache.openejb.config.ConfigurationFactory$Chain.deploy(ConfigurationFactory.java:247)
> 	at org.apache.openejb.config.ConfigurationFactory.configureApplication(ConfigurationFactory.java:601)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.configureApplication(EjbModuleBuilder.java:635)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.getEjbJarInfo(EjbModuleBuilder.java:568)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.initContext(EjbModuleBuilder.java:493)
> 	at org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfiguration(EARConfigBuilder.java:592)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:257)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:136)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
> 	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
> 	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
> 	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
> 	at org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:342)
> 	at sun.reflect.GeneratedMethodAccessor159.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
> 	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
> 	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
> 	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
> 	at org.apache.geronimo.system.jmx.MBeanGBeanBridge.invoke(MBeanGBeanBridge.java:172)
> 	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
> 	at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
> 	at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1426)
> 	at javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:72)
> 	at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1264)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1366)
> 	at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:788)
> 	at sun.reflect.GeneratedMethodAccessor142.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
> 	at sun.rmi.transport.Transport$1.run(Transport.java:159)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
> 	at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
> 	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
> 	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> 	at java.lang.Thread.run(Thread.java:619)
> It seems to related with https://issues.apache.org/jira/browse/OPENEJB-951

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Issue Comment Edited: (GERONIMO-4945) Unable to deploy ejb with custom annotation

Posted by "Rex Wang (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/GERONIMO-4945?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12866511#action_12866511 ] 

Rex Wang edited comment on GERONIMO-4945 at 5/12/10 5:05 AM:
-------------------------------------------------------------

Hi Ben,

Your patch introduces a regression issue which fixed by Jarek in rev801054.

-Rex

      was (Author: rwonly):
    Hi Ben,

The root cause i think is that the annotation class is loaded by the app classloader, but the enum class is loaded by the temporary class loader. Your patch introduces a regression issue which fixed by Jarek in rev801054.

-Rex
  
> Unable to deploy ejb with custom annotation
> -------------------------------------------
>
>                 Key: GERONIMO-4945
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-4945
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: OpenEJB
>    Affects Versions: 2.2
>            Reporter: Alexey Kaigorodov
>            Assignee: Rex Wang
>            Priority: Critical
>             Fix For: 2.2.1
>
>         Attachments: G4945.patch, test-custom-annotation-ejb-1.0.0-sources.jar, test-custom-annotation-ejb-1.0.0.jar
>
>
> Simple tast case:
> @Stateless
> @Local(Test.class)
> @Custom(type = CustomType.A)
> public class TestBean implements Test {
>   @Override
>   public void foo() {
>   }
> }
> @Target(ElementType.TYPE) 
> @Retention(RetentionPolicy.RUNTIME)
> public @interface Custom {
>   CustomType[] type() default {}; // works fine for non-array CustomType type();
> }
> public enum CustomType {
>   A, B
> }
> geronimo.log:
> 2009-11-03 14:05:17,138 ERROR [Deployer] Deployment failed due to 
> java.lang.ArrayStoreException: sun.reflect.annotation.AnnotationTypeMismatchExceptionProxy
> 	at sun.reflect.annotation.AnnotationParser.parseEnumArray(AnnotationParser.java:673)
> 	at sun.reflect.annotation.AnnotationParser.parseArray(AnnotationParser.java:462)
> 	at sun.reflect.annotation.AnnotationParser.parseMemberValue(AnnotationParser.java:286)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotation(AnnotationParser.java:222)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotations2(AnnotationParser.java:69)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotations(AnnotationParser.java:52)
> 	at java.lang.Class.initAnnotationsIfNecessary(Class.java:3070)
> 	at java.lang.Class.getAnnotation(Class.java:3029)
> 	at java.lang.Class.isAnnotationPresent(Class.java:3042)
> 	at org.apache.xbean.finder.ClassFinder.findAnnotatedClasses(ClassFinder.java:241)
> 	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:459)
> 	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:253)
> 	at org.apache.openejb.config.AnnotationDeployer.deploy(AnnotationDeployer.java:188)
> 	at org.apache.openejb.config.ConfigurationFactory$Chain.deploy(ConfigurationFactory.java:247)
> 	at org.apache.openejb.config.ConfigurationFactory.configureApplication(ConfigurationFactory.java:601)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.configureApplication(EjbModuleBuilder.java:635)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.getEjbJarInfo(EjbModuleBuilder.java:568)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.initContext(EjbModuleBuilder.java:493)
> 	at org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfiguration(EARConfigBuilder.java:592)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:257)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:136)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
> 	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
> 	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
> 	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
> 	at org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:342)
> 	at sun.reflect.GeneratedMethodAccessor159.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
> 	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
> 	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
> 	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
> 	at org.apache.geronimo.system.jmx.MBeanGBeanBridge.invoke(MBeanGBeanBridge.java:172)
> 	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
> 	at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
> 	at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1426)
> 	at javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:72)
> 	at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1264)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1366)
> 	at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:788)
> 	at sun.reflect.GeneratedMethodAccessor142.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
> 	at sun.rmi.transport.Transport$1.run(Transport.java:159)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
> 	at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
> 	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
> 	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> 	at java.lang.Thread.run(Thread.java:619)
> It seems to related with https://issues.apache.org/jira/browse/OPENEJB-951

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (GERONIMO-4945) Unable to deploy ejb with custom annotation

Posted by "Rex Wang (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/GERONIMO-4945?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12867369#action_12867369 ] 

Rex Wang commented on GERONIMO-4945:
------------------------------------

rev944089 for 2.1 branch

> Unable to deploy ejb with custom annotation
> -------------------------------------------
>
>                 Key: GERONIMO-4945
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-4945
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: OpenEJB
>    Affects Versions: 2.2
>            Reporter: Alexey Kaigorodov
>            Assignee: Rex Wang
>            Priority: Critical
>             Fix For: 2.2.1
>
>         Attachments: G4945.patch, test-custom-annotation-ejb-1.0.0-sources.jar, test-custom-annotation-ejb-1.0.0.jar
>
>
> Simple tast case:
> @Stateless
> @Local(Test.class)
> @Custom(type = CustomType.A)
> public class TestBean implements Test {
>   @Override
>   public void foo() {
>   }
> }
> @Target(ElementType.TYPE) 
> @Retention(RetentionPolicy.RUNTIME)
> public @interface Custom {
>   CustomType[] type() default {}; // works fine for non-array CustomType type();
> }
> public enum CustomType {
>   A, B
> }
> geronimo.log:
> 2009-11-03 14:05:17,138 ERROR [Deployer] Deployment failed due to 
> java.lang.ArrayStoreException: sun.reflect.annotation.AnnotationTypeMismatchExceptionProxy
> 	at sun.reflect.annotation.AnnotationParser.parseEnumArray(AnnotationParser.java:673)
> 	at sun.reflect.annotation.AnnotationParser.parseArray(AnnotationParser.java:462)
> 	at sun.reflect.annotation.AnnotationParser.parseMemberValue(AnnotationParser.java:286)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotation(AnnotationParser.java:222)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotations2(AnnotationParser.java:69)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotations(AnnotationParser.java:52)
> 	at java.lang.Class.initAnnotationsIfNecessary(Class.java:3070)
> 	at java.lang.Class.getAnnotation(Class.java:3029)
> 	at java.lang.Class.isAnnotationPresent(Class.java:3042)
> 	at org.apache.xbean.finder.ClassFinder.findAnnotatedClasses(ClassFinder.java:241)
> 	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:459)
> 	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:253)
> 	at org.apache.openejb.config.AnnotationDeployer.deploy(AnnotationDeployer.java:188)
> 	at org.apache.openejb.config.ConfigurationFactory$Chain.deploy(ConfigurationFactory.java:247)
> 	at org.apache.openejb.config.ConfigurationFactory.configureApplication(ConfigurationFactory.java:601)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.configureApplication(EjbModuleBuilder.java:635)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.getEjbJarInfo(EjbModuleBuilder.java:568)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.initContext(EjbModuleBuilder.java:493)
> 	at org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfiguration(EARConfigBuilder.java:592)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:257)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:136)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
> 	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
> 	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
> 	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
> 	at org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:342)
> 	at sun.reflect.GeneratedMethodAccessor159.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
> 	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
> 	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
> 	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
> 	at org.apache.geronimo.system.jmx.MBeanGBeanBridge.invoke(MBeanGBeanBridge.java:172)
> 	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
> 	at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
> 	at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1426)
> 	at javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:72)
> 	at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1264)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1366)
> 	at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:788)
> 	at sun.reflect.GeneratedMethodAccessor142.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
> 	at sun.rmi.transport.Transport$1.run(Transport.java:159)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
> 	at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
> 	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
> 	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> 	at java.lang.Thread.run(Thread.java:619)
> It seems to related with https://issues.apache.org/jira/browse/OPENEJB-951

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (GERONIMO-4945) Unable to deploy ejb with custom annotation

Posted by "Alexey Kaigorodov (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/GERONIMO-4945?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12864688#action_12864688 ] 

Alexey Kaigorodov commented on GERONIMO-4945:
---------------------------------------------

The problem occurs in 2.1.5 also. But 2.1.4 works fine.

> Unable to deploy ejb with custom annotation
> -------------------------------------------
>
>                 Key: GERONIMO-4945
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-4945
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: OpenEJB
>    Affects Versions: 2.2
>            Reporter: Alexey Kaigorodov
>            Priority: Critical
>             Fix For: 2.2.1
>
>         Attachments: test-custom-annotation-ejb-1.0.0-sources.jar, test-custom-annotation-ejb-1.0.0.jar
>
>
> Simple tast case:
> @Stateless
> @Local(Test.class)
> @Custom(type = CustomType.A)
> public class TestBean implements Test {
>   @Override
>   public void foo() {
>   }
> }
> @Target(ElementType.TYPE) 
> @Retention(RetentionPolicy.RUNTIME)
> public @interface Custom {
>   CustomType[] type() default {}; // works fine for non-array CustomType type();
> }
> public enum CustomType {
>   A, B
> }
> geronimo.log:
> 2009-11-03 14:05:17,138 ERROR [Deployer] Deployment failed due to 
> java.lang.ArrayStoreException: sun.reflect.annotation.AnnotationTypeMismatchExceptionProxy
> 	at sun.reflect.annotation.AnnotationParser.parseEnumArray(AnnotationParser.java:673)
> 	at sun.reflect.annotation.AnnotationParser.parseArray(AnnotationParser.java:462)
> 	at sun.reflect.annotation.AnnotationParser.parseMemberValue(AnnotationParser.java:286)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotation(AnnotationParser.java:222)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotations2(AnnotationParser.java:69)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotations(AnnotationParser.java:52)
> 	at java.lang.Class.initAnnotationsIfNecessary(Class.java:3070)
> 	at java.lang.Class.getAnnotation(Class.java:3029)
> 	at java.lang.Class.isAnnotationPresent(Class.java:3042)
> 	at org.apache.xbean.finder.ClassFinder.findAnnotatedClasses(ClassFinder.java:241)
> 	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:459)
> 	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:253)
> 	at org.apache.openejb.config.AnnotationDeployer.deploy(AnnotationDeployer.java:188)
> 	at org.apache.openejb.config.ConfigurationFactory$Chain.deploy(ConfigurationFactory.java:247)
> 	at org.apache.openejb.config.ConfigurationFactory.configureApplication(ConfigurationFactory.java:601)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.configureApplication(EjbModuleBuilder.java:635)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.getEjbJarInfo(EjbModuleBuilder.java:568)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.initContext(EjbModuleBuilder.java:493)
> 	at org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfiguration(EARConfigBuilder.java:592)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:257)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:136)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
> 	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
> 	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
> 	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
> 	at org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:342)
> 	at sun.reflect.GeneratedMethodAccessor159.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
> 	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
> 	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
> 	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
> 	at org.apache.geronimo.system.jmx.MBeanGBeanBridge.invoke(MBeanGBeanBridge.java:172)
> 	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
> 	at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
> 	at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1426)
> 	at javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:72)
> 	at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1264)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1366)
> 	at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:788)
> 	at sun.reflect.GeneratedMethodAccessor142.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
> 	at sun.rmi.transport.Transport$1.run(Transport.java:159)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
> 	at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
> 	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
> 	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> 	at java.lang.Thread.run(Thread.java:619)
> It seems to related with https://issues.apache.org/jira/browse/OPENEJB-951

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (GERONIMO-4945) Unable to deploy ejb with custom annotation

Posted by "liangkun (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/GERONIMO-4945?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12865068#action_12865068 ] 

liangkun commented on GERONIMO-4945:
------------------------------------

Hi Alexey,

It seems that the problem is related with classloader in geronimo.

When the class is custom annotation class ,the kernel should load the class using TemporaryClassLoader not using normal classloader.



> Unable to deploy ejb with custom annotation
> -------------------------------------------
>
>                 Key: GERONIMO-4945
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-4945
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: OpenEJB
>    Affects Versions: 2.2
>            Reporter: Alexey Kaigorodov
>            Priority: Critical
>             Fix For: 2.2.1
>
>         Attachments: test-custom-annotation-ejb-1.0.0-sources.jar, test-custom-annotation-ejb-1.0.0.jar
>
>
> Simple tast case:
> @Stateless
> @Local(Test.class)
> @Custom(type = CustomType.A)
> public class TestBean implements Test {
>   @Override
>   public void foo() {
>   }
> }
> @Target(ElementType.TYPE) 
> @Retention(RetentionPolicy.RUNTIME)
> public @interface Custom {
>   CustomType[] type() default {}; // works fine for non-array CustomType type();
> }
> public enum CustomType {
>   A, B
> }
> geronimo.log:
> 2009-11-03 14:05:17,138 ERROR [Deployer] Deployment failed due to 
> java.lang.ArrayStoreException: sun.reflect.annotation.AnnotationTypeMismatchExceptionProxy
> 	at sun.reflect.annotation.AnnotationParser.parseEnumArray(AnnotationParser.java:673)
> 	at sun.reflect.annotation.AnnotationParser.parseArray(AnnotationParser.java:462)
> 	at sun.reflect.annotation.AnnotationParser.parseMemberValue(AnnotationParser.java:286)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotation(AnnotationParser.java:222)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotations2(AnnotationParser.java:69)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotations(AnnotationParser.java:52)
> 	at java.lang.Class.initAnnotationsIfNecessary(Class.java:3070)
> 	at java.lang.Class.getAnnotation(Class.java:3029)
> 	at java.lang.Class.isAnnotationPresent(Class.java:3042)
> 	at org.apache.xbean.finder.ClassFinder.findAnnotatedClasses(ClassFinder.java:241)
> 	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:459)
> 	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:253)
> 	at org.apache.openejb.config.AnnotationDeployer.deploy(AnnotationDeployer.java:188)
> 	at org.apache.openejb.config.ConfigurationFactory$Chain.deploy(ConfigurationFactory.java:247)
> 	at org.apache.openejb.config.ConfigurationFactory.configureApplication(ConfigurationFactory.java:601)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.configureApplication(EjbModuleBuilder.java:635)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.getEjbJarInfo(EjbModuleBuilder.java:568)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.initContext(EjbModuleBuilder.java:493)
> 	at org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfiguration(EARConfigBuilder.java:592)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:257)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:136)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
> 	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
> 	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
> 	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
> 	at org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:342)
> 	at sun.reflect.GeneratedMethodAccessor159.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
> 	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
> 	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
> 	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
> 	at org.apache.geronimo.system.jmx.MBeanGBeanBridge.invoke(MBeanGBeanBridge.java:172)
> 	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
> 	at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
> 	at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1426)
> 	at javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:72)
> 	at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1264)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1366)
> 	at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:788)
> 	at sun.reflect.GeneratedMethodAccessor142.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
> 	at sun.rmi.transport.Transport$1.run(Transport.java:159)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
> 	at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
> 	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
> 	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> 	at java.lang.Thread.run(Thread.java:619)
> It seems to related with https://issues.apache.org/jira/browse/OPENEJB-951

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (GERONIMO-4945) Unable to deploy ejb with custom annotation

Posted by "Shawn Jiang (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/GERONIMO-4945?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Shawn Jiang updated GERONIMO-4945:
----------------------------------

    Fix Version/s: 2.2.1

> Unable to deploy ejb with custom annotation
> -------------------------------------------
>
>                 Key: GERONIMO-4945
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-4945
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: OpenEJB
>    Affects Versions: 2.2
>            Reporter: Alexey Kaigorodov
>            Priority: Critical
>             Fix For: 2.2.1
>
>         Attachments: test-custom-annotation-ejb-1.0.0-sources.jar, test-custom-annotation-ejb-1.0.0.jar
>
>
> Simple tast case:
> @Stateless
> @Local(Test.class)
> @Custom(type = CustomType.A)
> public class TestBean implements Test {
>   @Override
>   public void foo() {
>   }
> }
> @Target(ElementType.TYPE) 
> @Retention(RetentionPolicy.RUNTIME)
> public @interface Custom {
>   CustomType[] type() default {}; // works fine for non-array CustomType type();
> }
> public enum CustomType {
>   A, B
> }
> geronimo.log:
> 2009-11-03 14:05:17,138 ERROR [Deployer] Deployment failed due to 
> java.lang.ArrayStoreException: sun.reflect.annotation.AnnotationTypeMismatchExceptionProxy
> 	at sun.reflect.annotation.AnnotationParser.parseEnumArray(AnnotationParser.java:673)
> 	at sun.reflect.annotation.AnnotationParser.parseArray(AnnotationParser.java:462)
> 	at sun.reflect.annotation.AnnotationParser.parseMemberValue(AnnotationParser.java:286)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotation(AnnotationParser.java:222)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotations2(AnnotationParser.java:69)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotations(AnnotationParser.java:52)
> 	at java.lang.Class.initAnnotationsIfNecessary(Class.java:3070)
> 	at java.lang.Class.getAnnotation(Class.java:3029)
> 	at java.lang.Class.isAnnotationPresent(Class.java:3042)
> 	at org.apache.xbean.finder.ClassFinder.findAnnotatedClasses(ClassFinder.java:241)
> 	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:459)
> 	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:253)
> 	at org.apache.openejb.config.AnnotationDeployer.deploy(AnnotationDeployer.java:188)
> 	at org.apache.openejb.config.ConfigurationFactory$Chain.deploy(ConfigurationFactory.java:247)
> 	at org.apache.openejb.config.ConfigurationFactory.configureApplication(ConfigurationFactory.java:601)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.configureApplication(EjbModuleBuilder.java:635)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.getEjbJarInfo(EjbModuleBuilder.java:568)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.initContext(EjbModuleBuilder.java:493)
> 	at org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfiguration(EARConfigBuilder.java:592)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:257)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:136)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
> 	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
> 	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
> 	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
> 	at org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:342)
> 	at sun.reflect.GeneratedMethodAccessor159.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
> 	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
> 	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
> 	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
> 	at org.apache.geronimo.system.jmx.MBeanGBeanBridge.invoke(MBeanGBeanBridge.java:172)
> 	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
> 	at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
> 	at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1426)
> 	at javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:72)
> 	at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1264)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1366)
> 	at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:788)
> 	at sun.reflect.GeneratedMethodAccessor142.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
> 	at sun.rmi.transport.Transport$1.run(Transport.java:159)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
> 	at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
> 	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
> 	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> 	at java.lang.Thread.run(Thread.java:619)
> It seems to related with https://issues.apache.org/jira/browse/OPENEJB-951

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (GERONIMO-4945) Unable to deploy ejb with custom annotation

Posted by "Rex Wang (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/GERONIMO-4945?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12866513#action_12866513 ] 

Rex Wang commented on GERONIMO-4945:
------------------------------------

rev943414 in 2.2 branch
Any issues, please let me know.
-Rex

> Unable to deploy ejb with custom annotation
> -------------------------------------------
>
>                 Key: GERONIMO-4945
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-4945
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: OpenEJB
>    Affects Versions: 2.2
>            Reporter: Alexey Kaigorodov
>            Assignee: Rex Wang
>            Priority: Critical
>             Fix For: 2.2.1
>
>         Attachments: G4945.patch, test-custom-annotation-ejb-1.0.0-sources.jar, test-custom-annotation-ejb-1.0.0.jar
>
>
> Simple tast case:
> @Stateless
> @Local(Test.class)
> @Custom(type = CustomType.A)
> public class TestBean implements Test {
>   @Override
>   public void foo() {
>   }
> }
> @Target(ElementType.TYPE) 
> @Retention(RetentionPolicy.RUNTIME)
> public @interface Custom {
>   CustomType[] type() default {}; // works fine for non-array CustomType type();
> }
> public enum CustomType {
>   A, B
> }
> geronimo.log:
> 2009-11-03 14:05:17,138 ERROR [Deployer] Deployment failed due to 
> java.lang.ArrayStoreException: sun.reflect.annotation.AnnotationTypeMismatchExceptionProxy
> 	at sun.reflect.annotation.AnnotationParser.parseEnumArray(AnnotationParser.java:673)
> 	at sun.reflect.annotation.AnnotationParser.parseArray(AnnotationParser.java:462)
> 	at sun.reflect.annotation.AnnotationParser.parseMemberValue(AnnotationParser.java:286)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotation(AnnotationParser.java:222)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotations2(AnnotationParser.java:69)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotations(AnnotationParser.java:52)
> 	at java.lang.Class.initAnnotationsIfNecessary(Class.java:3070)
> 	at java.lang.Class.getAnnotation(Class.java:3029)
> 	at java.lang.Class.isAnnotationPresent(Class.java:3042)
> 	at org.apache.xbean.finder.ClassFinder.findAnnotatedClasses(ClassFinder.java:241)
> 	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:459)
> 	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:253)
> 	at org.apache.openejb.config.AnnotationDeployer.deploy(AnnotationDeployer.java:188)
> 	at org.apache.openejb.config.ConfigurationFactory$Chain.deploy(ConfigurationFactory.java:247)
> 	at org.apache.openejb.config.ConfigurationFactory.configureApplication(ConfigurationFactory.java:601)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.configureApplication(EjbModuleBuilder.java:635)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.getEjbJarInfo(EjbModuleBuilder.java:568)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.initContext(EjbModuleBuilder.java:493)
> 	at org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfiguration(EARConfigBuilder.java:592)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:257)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:136)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
> 	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
> 	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
> 	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
> 	at org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:342)
> 	at sun.reflect.GeneratedMethodAccessor159.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
> 	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
> 	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
> 	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
> 	at org.apache.geronimo.system.jmx.MBeanGBeanBridge.invoke(MBeanGBeanBridge.java:172)
> 	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
> 	at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
> 	at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1426)
> 	at javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:72)
> 	at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1264)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1366)
> 	at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:788)
> 	at sun.reflect.GeneratedMethodAccessor142.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
> 	at sun.rmi.transport.Transport$1.run(Transport.java:159)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
> 	at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
> 	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
> 	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> 	at java.lang.Thread.run(Thread.java:619)
> It seems to related with https://issues.apache.org/jira/browse/OPENEJB-951

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (GERONIMO-4945) Unable to deploy ejb with custom annotation

Posted by "viola.lu (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/GERONIMO-4945?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12867383#action_12867383 ] 

viola.lu commented on GERONIMO-4945:
------------------------------------

Verify this test ejb on latest 2.2 branch build 2010.05.13-10:02:43.271-0400, this error doesn't exist any more, so close it.

> Unable to deploy ejb with custom annotation
> -------------------------------------------
>
>                 Key: GERONIMO-4945
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-4945
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: OpenEJB
>    Affects Versions: 2.2
>            Reporter: Alexey Kaigorodov
>            Assignee: Rex Wang
>            Priority: Critical
>             Fix For: 2.1.6, 2.2.1
>
>         Attachments: G4945.patch, test-custom-annotation-ejb-1.0.0-sources.jar, test-custom-annotation-ejb-1.0.0.jar
>
>
> Simple tast case:
> @Stateless
> @Local(Test.class)
> @Custom(type = CustomType.A)
> public class TestBean implements Test {
>   @Override
>   public void foo() {
>   }
> }
> @Target(ElementType.TYPE) 
> @Retention(RetentionPolicy.RUNTIME)
> public @interface Custom {
>   CustomType[] type() default {}; // works fine for non-array CustomType type();
> }
> public enum CustomType {
>   A, B
> }
> geronimo.log:
> 2009-11-03 14:05:17,138 ERROR [Deployer] Deployment failed due to 
> java.lang.ArrayStoreException: sun.reflect.annotation.AnnotationTypeMismatchExceptionProxy
> 	at sun.reflect.annotation.AnnotationParser.parseEnumArray(AnnotationParser.java:673)
> 	at sun.reflect.annotation.AnnotationParser.parseArray(AnnotationParser.java:462)
> 	at sun.reflect.annotation.AnnotationParser.parseMemberValue(AnnotationParser.java:286)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotation(AnnotationParser.java:222)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotations2(AnnotationParser.java:69)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotations(AnnotationParser.java:52)
> 	at java.lang.Class.initAnnotationsIfNecessary(Class.java:3070)
> 	at java.lang.Class.getAnnotation(Class.java:3029)
> 	at java.lang.Class.isAnnotationPresent(Class.java:3042)
> 	at org.apache.xbean.finder.ClassFinder.findAnnotatedClasses(ClassFinder.java:241)
> 	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:459)
> 	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:253)
> 	at org.apache.openejb.config.AnnotationDeployer.deploy(AnnotationDeployer.java:188)
> 	at org.apache.openejb.config.ConfigurationFactory$Chain.deploy(ConfigurationFactory.java:247)
> 	at org.apache.openejb.config.ConfigurationFactory.configureApplication(ConfigurationFactory.java:601)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.configureApplication(EjbModuleBuilder.java:635)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.getEjbJarInfo(EjbModuleBuilder.java:568)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.initContext(EjbModuleBuilder.java:493)
> 	at org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfiguration(EARConfigBuilder.java:592)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:257)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:136)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
> 	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
> 	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
> 	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
> 	at org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:342)
> 	at sun.reflect.GeneratedMethodAccessor159.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
> 	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
> 	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
> 	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
> 	at org.apache.geronimo.system.jmx.MBeanGBeanBridge.invoke(MBeanGBeanBridge.java:172)
> 	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
> 	at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
> 	at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1426)
> 	at javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:72)
> 	at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1264)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1366)
> 	at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:788)
> 	at sun.reflect.GeneratedMethodAccessor142.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
> 	at sun.rmi.transport.Transport$1.run(Transport.java:159)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
> 	at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
> 	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
> 	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> 	at java.lang.Thread.run(Thread.java:619)
> It seems to related with https://issues.apache.org/jira/browse/OPENEJB-951

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Resolved: (GERONIMO-4945) Unable to deploy ejb with custom annotation

Posted by "Rex Wang (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/GERONIMO-4945?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Rex Wang resolved GERONIMO-4945.
--------------------------------

    Fix Version/s: 2.1.6
       Resolution: Fixed

> Unable to deploy ejb with custom annotation
> -------------------------------------------
>
>                 Key: GERONIMO-4945
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-4945
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: OpenEJB
>    Affects Versions: 2.2
>            Reporter: Alexey Kaigorodov
>            Assignee: Rex Wang
>            Priority: Critical
>             Fix For: 2.1.6, 2.2.1
>
>         Attachments: G4945.patch, test-custom-annotation-ejb-1.0.0-sources.jar, test-custom-annotation-ejb-1.0.0.jar
>
>
> Simple tast case:
> @Stateless
> @Local(Test.class)
> @Custom(type = CustomType.A)
> public class TestBean implements Test {
>   @Override
>   public void foo() {
>   }
> }
> @Target(ElementType.TYPE) 
> @Retention(RetentionPolicy.RUNTIME)
> public @interface Custom {
>   CustomType[] type() default {}; // works fine for non-array CustomType type();
> }
> public enum CustomType {
>   A, B
> }
> geronimo.log:
> 2009-11-03 14:05:17,138 ERROR [Deployer] Deployment failed due to 
> java.lang.ArrayStoreException: sun.reflect.annotation.AnnotationTypeMismatchExceptionProxy
> 	at sun.reflect.annotation.AnnotationParser.parseEnumArray(AnnotationParser.java:673)
> 	at sun.reflect.annotation.AnnotationParser.parseArray(AnnotationParser.java:462)
> 	at sun.reflect.annotation.AnnotationParser.parseMemberValue(AnnotationParser.java:286)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotation(AnnotationParser.java:222)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotations2(AnnotationParser.java:69)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotations(AnnotationParser.java:52)
> 	at java.lang.Class.initAnnotationsIfNecessary(Class.java:3070)
> 	at java.lang.Class.getAnnotation(Class.java:3029)
> 	at java.lang.Class.isAnnotationPresent(Class.java:3042)
> 	at org.apache.xbean.finder.ClassFinder.findAnnotatedClasses(ClassFinder.java:241)
> 	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:459)
> 	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:253)
> 	at org.apache.openejb.config.AnnotationDeployer.deploy(AnnotationDeployer.java:188)
> 	at org.apache.openejb.config.ConfigurationFactory$Chain.deploy(ConfigurationFactory.java:247)
> 	at org.apache.openejb.config.ConfigurationFactory.configureApplication(ConfigurationFactory.java:601)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.configureApplication(EjbModuleBuilder.java:635)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.getEjbJarInfo(EjbModuleBuilder.java:568)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.initContext(EjbModuleBuilder.java:493)
> 	at org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfiguration(EARConfigBuilder.java:592)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:257)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:136)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
> 	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
> 	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
> 	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
> 	at org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:342)
> 	at sun.reflect.GeneratedMethodAccessor159.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
> 	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
> 	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
> 	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
> 	at org.apache.geronimo.system.jmx.MBeanGBeanBridge.invoke(MBeanGBeanBridge.java:172)
> 	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
> 	at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
> 	at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1426)
> 	at javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:72)
> 	at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1264)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1366)
> 	at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:788)
> 	at sun.reflect.GeneratedMethodAccessor142.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
> 	at sun.rmi.transport.Transport$1.run(Transport.java:159)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
> 	at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
> 	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
> 	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> 	at java.lang.Thread.run(Thread.java:619)
> It seems to related with https://issues.apache.org/jira/browse/OPENEJB-951

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Issue Comment Edited: (GERONIMO-4945) Unable to deploy ejb with custom annotation

Posted by "Rex Wang (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/GERONIMO-4945?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12866511#action_12866511 ] 

Rex Wang edited comment on GERONIMO-4945 at 5/12/10 4:52 AM:
-------------------------------------------------------------

Hi Ben,

The root cause i think is that the annotation class is loaded by the app classloader, but the enum class is loaded by the temporary class loader. Your patch introduces a regression issue which fixed by Jarek in rev801054.

-Rex

      was (Author: rwonly):
    Hi Ben,

The root cause i think is that the annotation class is loaded by the app classloader, but the enum class is loaded by the temporary class loaded. Your patch introduces a regression issue which fixed by Jarek in rev801054.

-Rex
  
> Unable to deploy ejb with custom annotation
> -------------------------------------------
>
>                 Key: GERONIMO-4945
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-4945
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: OpenEJB
>    Affects Versions: 2.2
>            Reporter: Alexey Kaigorodov
>            Assignee: Rex Wang
>            Priority: Critical
>             Fix For: 2.2.1
>
>         Attachments: G4945.patch, test-custom-annotation-ejb-1.0.0-sources.jar, test-custom-annotation-ejb-1.0.0.jar
>
>
> Simple tast case:
> @Stateless
> @Local(Test.class)
> @Custom(type = CustomType.A)
> public class TestBean implements Test {
>   @Override
>   public void foo() {
>   }
> }
> @Target(ElementType.TYPE) 
> @Retention(RetentionPolicy.RUNTIME)
> public @interface Custom {
>   CustomType[] type() default {}; // works fine for non-array CustomType type();
> }
> public enum CustomType {
>   A, B
> }
> geronimo.log:
> 2009-11-03 14:05:17,138 ERROR [Deployer] Deployment failed due to 
> java.lang.ArrayStoreException: sun.reflect.annotation.AnnotationTypeMismatchExceptionProxy
> 	at sun.reflect.annotation.AnnotationParser.parseEnumArray(AnnotationParser.java:673)
> 	at sun.reflect.annotation.AnnotationParser.parseArray(AnnotationParser.java:462)
> 	at sun.reflect.annotation.AnnotationParser.parseMemberValue(AnnotationParser.java:286)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotation(AnnotationParser.java:222)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotations2(AnnotationParser.java:69)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotations(AnnotationParser.java:52)
> 	at java.lang.Class.initAnnotationsIfNecessary(Class.java:3070)
> 	at java.lang.Class.getAnnotation(Class.java:3029)
> 	at java.lang.Class.isAnnotationPresent(Class.java:3042)
> 	at org.apache.xbean.finder.ClassFinder.findAnnotatedClasses(ClassFinder.java:241)
> 	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:459)
> 	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:253)
> 	at org.apache.openejb.config.AnnotationDeployer.deploy(AnnotationDeployer.java:188)
> 	at org.apache.openejb.config.ConfigurationFactory$Chain.deploy(ConfigurationFactory.java:247)
> 	at org.apache.openejb.config.ConfigurationFactory.configureApplication(ConfigurationFactory.java:601)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.configureApplication(EjbModuleBuilder.java:635)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.getEjbJarInfo(EjbModuleBuilder.java:568)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.initContext(EjbModuleBuilder.java:493)
> 	at org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfiguration(EARConfigBuilder.java:592)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:257)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:136)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
> 	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
> 	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
> 	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
> 	at org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:342)
> 	at sun.reflect.GeneratedMethodAccessor159.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
> 	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
> 	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
> 	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
> 	at org.apache.geronimo.system.jmx.MBeanGBeanBridge.invoke(MBeanGBeanBridge.java:172)
> 	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
> 	at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
> 	at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1426)
> 	at javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:72)
> 	at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1264)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1366)
> 	at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:788)
> 	at sun.reflect.GeneratedMethodAccessor142.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
> 	at sun.rmi.transport.Transport$1.run(Transport.java:159)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
> 	at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
> 	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
> 	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> 	at java.lang.Thread.run(Thread.java:619)
> It seems to related with https://issues.apache.org/jira/browse/OPENEJB-951

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (GERONIMO-4945) Unable to deploy ejb with custom annotation

Posted by "liangkun (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/GERONIMO-4945?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12865081#action_12865081 ] 

liangkun commented on GERONIMO-4945:
------------------------------------

Hi Alexey,

Add a patch, the problem resolved!



> Unable to deploy ejb with custom annotation
> -------------------------------------------
>
>                 Key: GERONIMO-4945
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-4945
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: OpenEJB
>    Affects Versions: 2.2
>            Reporter: Alexey Kaigorodov
>            Priority: Critical
>             Fix For: 2.2.1
>
>         Attachments: test-custom-annotation-ejb-1.0.0-sources.jar, test-custom-annotation-ejb-1.0.0.jar
>
>
> Simple tast case:
> @Stateless
> @Local(Test.class)
> @Custom(type = CustomType.A)
> public class TestBean implements Test {
>   @Override
>   public void foo() {
>   }
> }
> @Target(ElementType.TYPE) 
> @Retention(RetentionPolicy.RUNTIME)
> public @interface Custom {
>   CustomType[] type() default {}; // works fine for non-array CustomType type();
> }
> public enum CustomType {
>   A, B
> }
> geronimo.log:
> 2009-11-03 14:05:17,138 ERROR [Deployer] Deployment failed due to 
> java.lang.ArrayStoreException: sun.reflect.annotation.AnnotationTypeMismatchExceptionProxy
> 	at sun.reflect.annotation.AnnotationParser.parseEnumArray(AnnotationParser.java:673)
> 	at sun.reflect.annotation.AnnotationParser.parseArray(AnnotationParser.java:462)
> 	at sun.reflect.annotation.AnnotationParser.parseMemberValue(AnnotationParser.java:286)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotation(AnnotationParser.java:222)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotations2(AnnotationParser.java:69)
> 	at sun.reflect.annotation.AnnotationParser.parseAnnotations(AnnotationParser.java:52)
> 	at java.lang.Class.initAnnotationsIfNecessary(Class.java:3070)
> 	at java.lang.Class.getAnnotation(Class.java:3029)
> 	at java.lang.Class.isAnnotationPresent(Class.java:3042)
> 	at org.apache.xbean.finder.ClassFinder.findAnnotatedClasses(ClassFinder.java:241)
> 	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:459)
> 	at org.apache.openejb.config.AnnotationDeployer$DiscoverAnnotatedBeans.deploy(AnnotationDeployer.java:253)
> 	at org.apache.openejb.config.AnnotationDeployer.deploy(AnnotationDeployer.java:188)
> 	at org.apache.openejb.config.ConfigurationFactory$Chain.deploy(ConfigurationFactory.java:247)
> 	at org.apache.openejb.config.ConfigurationFactory.configureApplication(ConfigurationFactory.java:601)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.configureApplication(EjbModuleBuilder.java:635)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.getEjbJarInfo(EjbModuleBuilder.java:568)
> 	at org.apache.geronimo.openejb.deployment.EjbModuleBuilder.initContext(EjbModuleBuilder.java:493)
> 	at org.apache.geronimo.j2ee.deployment.EARConfigBuilder.buildConfiguration(EARConfigBuilder.java:592)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:257)
> 	at org.apache.geronimo.deployment.Deployer.deploy(Deployer.java:136)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
> 	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
> 	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
> 	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
> 	at org.apache.geronimo.kernel.KernelGBean.invoke(KernelGBean.java:342)
> 	at sun.reflect.GeneratedMethodAccessor159.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at org.apache.geronimo.gbean.runtime.ReflectionMethodInvoker.invoke(ReflectionMethodInvoker.java:34)
> 	at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:130)
> 	at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:851)
> 	at org.apache.geronimo.kernel.basic.BasicKernel.invoke(BasicKernel.java:237)
> 	at org.apache.geronimo.system.jmx.MBeanGBeanBridge.invoke(MBeanGBeanBridge.java:172)
> 	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
> 	at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
> 	at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1426)
> 	at javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:72)
> 	at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1264)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1366)
> 	at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:788)
> 	at sun.reflect.GeneratedMethodAccessor142.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> 	at java.lang.reflect.Method.invoke(Method.java:597)
> 	at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
> 	at sun.rmi.transport.Transport$1.run(Transport.java:159)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
> 	at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
> 	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
> 	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> 	at java.lang.Thread.run(Thread.java:619)
> It seems to related with https://issues.apache.org/jira/browse/OPENEJB-951

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.