Java EJB部署的JBoos异常:无法强制转换为org.jboss.lang.Annotation
我试图部署一个旧的EJB应用程序来验证一个错误,为此,我使用了jboss-4.0.5.GA服务器,在server\default\deploy文件夹下部署了我的ear文件,并启动了服务器。但是我得到了Java EJB部署的JBoos异常:无法强制转换为org.jboss.lang.Annotation,java,jboss,ejb,Java,Jboss,Ejb,我试图部署一个旧的EJB应用程序来验证一个错误,为此,我使用了jboss-4.0.5.GA服务器,在server\default\deploy文件夹下部署了我的ear文件,并启动了服务器。但是我得到了java.lang.ClassCastException:com.sun.proxy.$Proxy76不能强制转换为org.jboss.lang.Annotationexception。 这个ear在服务器上运行良好,我的本地服务器上仍然有相同的JBOSS版本。 请检查从server.log文件截取
java.lang.ClassCastException:com.sun.proxy.$Proxy76不能强制转换为org.jboss.lang.Annotation
exception。
这个ear在服务器上运行良好,我的本地服务器上仍然有相同的JBOSS版本。
请检查从server.log文件截取的以下日志:
2020-09-15 09:02:18,234 INFO [org.jboss.resource.adapter.jdbc.remote.WrapperDataSourceService] Bound ConnectionManager 'jboss.jca:service=DataSourceBinding,name=DBPictureCard' to JNDI name 'java:DBPictureCard'
2020-09-15 09:02:18,305 INFO [org.jboss.deployment.EARDeployer] Init J2EE application: file:/C:/test/jboss-4.0.5.GA/jboss-4.0.5.GA/server/default/deploy/PictureCardApp.ear
2020-09-15 09:02:18,808 WARN [org.jboss.deployment.MainDeployer] Found non-jar deployer for PictureCardBusinessEJB.jar:
MBeanProxyExt[jboss.ejb:service=EJBDeployer]
2020-09-15 09:02:20,200 INFO [org.jboss.deployment.EARDeployer] Init J2EE application: file:/C:/test/jboss-4.0.5.GA/jboss-4.0.5.GA/server/default/tmp/deploy/tmp8388441575443165668PictureCardApp.ear-contents/PictureCardDataEJB.ear
2020-09-15 09:02:20,739 INFO [org.jboss.ejb.EjbModule] Deploying UserFacadeBean
2020-09-15 09:02:20,780 INFO [org.jboss.ejb.EjbModule] Deploying UserBean
2020-09-15 09:02:20,818 INFO [org.jboss.ejb.EjbModule] Deploying CustomerFacadeBean
2020-09-15 09:02:20,820 INFO [org.jboss.ejb.EjbModule] Deploying CustomerBean
2020-09-15 09:02:20,822 INFO [org.jboss.ejb.EjbModule] Deploying RoleFacadeBean
2020-09-15 09:02:20,824 INFO [org.jboss.ejb.EjbModule] Deploying RoleBean
2020-09-15 09:02:21,732 ERROR [org.jboss.deployment.MainDeployer] Could not create deployment: file:/C:/test/jboss-4.0.5.GA/jboss-4.0.5.GA/server/default/tmp/deploy/tmp8388441575443165668PictureCardApp.ear-contents/PictureCardDataWS.war
java.lang.ClassCastException: com.sun.proxy.$Proxy76 cannot be cast to org.jboss.lang.Annotation
at org.jboss.lang.AnnotationHelper.getAnnotation(AnnotationHelper.java:80)
at org.jboss.lang.AnnotationHelper.isAnnotationPresent(AnnotationHelper.java:61)
at org.jboss.ws.integration.jboss.DeployerInterceptorJSE.isWebserviceDeployment(DeployerInterceptorJSE.java:125)
at org.jboss.ws.integration.jboss.DeployerInterceptor.create(DeployerInterceptor.java:76)
at org.jboss.ws.integration.jboss.DeployerInterceptorJSE.create(DeployerInterceptorJSE.java:74)
at org.jboss.deployment.SubDeployerInterceptorSupport$XMBeanInterceptor.create(SubDeployerInterceptorSupport.java:180)
at org.jboss.deployment.SubDeployerInterceptor.invoke(SubDeployerInterceptor.java:91)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
at com.sun.proxy.$Proxy35.create(Unknown Source)
at org.jboss.deployment.MainDeployer.create(MainDeployer.java:969)
at org.jboss.deployment.MainDeployer.create(MainDeployer.java:959)
at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:818)
at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:782)
at sun.reflect.GeneratedMethodAccessor53.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
at com.sun.proxy.$Proxy8.deploy(Unknown Source)
at org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymentScanner.java:421)
at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.java:634)
at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.doScan(AbstractDeploymentScanner.java:263)
at org.jboss.deployment.scanner.AbstractDeploymentScanner.startService(AbstractDeploymentScanner.java:336)
at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:289)
at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:245)
at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:978)
at com.sun.proxy.$Proxy0.start(Unknown Source)
at org.jboss.system.ServiceController.start(ServiceController.java:417)
at sun.reflect.GeneratedMethodAccessor10.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
at com.sun.proxy.$Proxy4.start(Unknown Source)
at org.jboss.deployment.SARDeployer.start(SARDeployer.java:302)
at org.jboss.deployment.MainDeployer.start(MainDeployer.java:1025)
at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:819)
at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:782)
at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:766)
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.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
at com.sun.proxy.$Proxy5.deploy(Unknown Source)
at org.jboss.system.server.ServerImpl.doStart(ServerImpl.java:482)
at org.jboss.system.server.ServerImpl.start(ServerImpl.java:362)
at org.jboss.Main.boot(Main.java:200)
at org.jboss.Main$1.run(Main.java:490)
at java.lang.Thread.run(Thread.java:662)
2020-09-15 09:02:21,736 ERROR [org.jboss.deployment.scanner.URLDeploymentScanner] Incomplete Deployment listing:
--- Incompletely deployed packages ---
org.jboss.deployment.DeploymentInfo@7d5bdba5 { url=file:/C:/test/jboss-4.0.5.GA/jboss-4.0.5.GA/server/default/deploy/PictureCardApp.ear }
deployer: org.jboss.deployment.EARDeployer@b86944
status: Deployment FAILED reason: Could not create deployment: file:/C:/test/jboss-4.0.5.GA/jboss-4.0.5.GA/server/default/tmp/deploy/tmp8388441575443165668PictureCardApp.ear-contents/PictureCardDataWS.war; - nested throwable: (java.lang.ClassCastException: com.sun.proxy.$Proxy76 cannot be cast to org.jboss.lang.Annotation)
state: FAILED
watch: file:/C:/test/jboss-4.0.5.GA/jboss-4.0.5.GA/server/default/deploy/PictureCardApp.ear
altDD: null
lastDeployed: 1600140740261
lastModified: 1600140738304
mbeans:
最近,当我们试图将运行JBoss4.0.5.GA服务器的JVM从Java5切换到Java8时,我们遇到了同样的异常。通过切换到JBoss 4.2.3.GA,我成功地在Java 8下使用ejb部署了我的ear,但我必须添加以下VM选项以使其工作: -Djavax.management.builder.initial=org.jboss.system.server.jmx.MBeanServerBuilderImpl -Djboss.platform.mbeanserver -Dcom.sun.management.jmxremote 我无法找到一个解决方案,使其在Java8下与JBoss4.0.5.GA一起工作