Uploaded image for project: 'JBoss Enterprise Application Platform 4 and 5'
  1. JBoss Enterprise Application Platform 4 and 5
  2. JBPAPP-8465

Signed cglib.jar prevents seam2 spring ftest from working

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: Critical
    • Resolution: Done
    • Affects Version/s: EAP_EWP 5.1.2
    • Fix Version/s: EAP_EWP 5.2.0
    • Component/s: Seam2
    • Labels:
      None
    • Environment:

      Fedora 16 64-bit, Mozilla Firefox 3.6.25, Oracle JDK 1.6.0_30

    • Affects:
      Release Notes
    • Release Notes Text:
      The Spring example application failed to run because the cgilib.jar file was signed. This has now been resolved by un-signing the file and the example now runs as expected.
    • Release Notes Docs Status:
      Documented as Resolved Issue
    • Docs QE Status:
      NEW
    • Bugzilla Update:
      Perform

      Description

      Seam version: 2.2.5.EAP5 (included in EAP 5.1.2.GA)
      The spring example from Seam 2.2 was migrated to EAP6 according to the migration guide on Documentation-Stage (http://documentation-stage.bne.redhat.com/docs/en-US/JBoss_Enterprise_Application_Platform/6/html/Beta_Documentation/Migrate_Seam_22_Archives_to_JBoss_Enterprise_Application_Platform_6.html)
      and the bug was verified to occur with EAP 6.0.0.ER3.

      When the ftests are run, they fail immediately.
      Server log contains:

      18:23:59,081 SEVERE [javax.enterprise.resource.webcontainer.jsf.application] (http-localhost-127.0.0.1-8080-1) org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'userService' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Initialization of bean failed; nested exception is org.springframework.aop.framework.AopConfigException: Could not generate CGLIB subclass of class [class org.jboss.seam.example.spring.UserService]: Common causes of this problem include using a final class or a non-visible class; nested exception is net.sf.cglib.core.CodeGenerationException: java.lang.reflect.InvocationTargetException-->null: javax.faces.el.EvaluationException: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'userService' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Initialization of bean failed; nested exception is org.springframework.aop.framework.AopConfigException: Could not generate CGLIB subclass of class [class org.jboss.seam.example.spring.UserService]: Common causes of this problem include using a final class or a non-visible class; nested exception is net.sf.cglib.core.CodeGenerationException: java.lang.reflect.InvocationTargetException-->null
      	at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:102) [jsf-api-1.2_15-b01-redhat-1.jar:1.2_15-20111208-SNAPSHOT]
      	at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102) [jsf-impl-1.2_15-b01-redhat-1.jar:1.2_15-20111208-SNAPSHOT]
      	at javax.faces.component.UICommand.broadcast(UICommand.java:387) [jsf-api-1.2_15-b01-redhat-1.jar:1.2_15-20111208-SNAPSHOT]
      	at org.ajax4jsf.component.AjaxViewRoot.processEvents(AjaxViewRoot.java:321) [richfaces-impl.jar:3.3.1.SP3]
      	at org.ajax4jsf.component.AjaxViewRoot.broadcastEvents(AjaxViewRoot.java:296) [richfaces-impl.jar:3.3.1.SP3]
      	at org.ajax4jsf.component.AjaxViewRoot.processPhase(AjaxViewRoot.java:253) [richfaces-impl.jar:3.3.1.SP3]
      	at org.ajax4jsf.component.AjaxViewRoot.processApplication(AjaxViewRoot.java:466) [richfaces-impl.jar:3.3.1.SP3]
      	at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:82) [jsf-impl-1.2_15-b01-redhat-1.jar:1.2_15-20111208-SNAPSHOT]
      	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100) [jsf-impl-1.2_15-b01-redhat-1.jar:1.2_15-20111208-SNAPSHOT]
      	at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118) [jsf-impl-1.2_15-b01-redhat-1.jar:1.2_15-20111208-SNAPSHOT]
      	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265) [jsf-api-1.2_15-b01-redhat-1.jar:1.2_15-20111208-SNAPSHOT]
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:329) [jbossweb-7.0.10.Final-redhat-1.jar:]
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248) [jbossweb-7.0.10.Final-redhat-1.jar:]
      	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83) [jboss-seam.jar:2.2.5.EAP5]
      	at org.jboss.seam.web.IdentityFilter.doFilter(IdentityFilter.java:40) [jboss-seam.jar:2.2.5.EAP5]
      	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69) [jboss-seam.jar:2.2.5.EAP5]
      	at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:90) [jboss-seam.jar:2.2.5.EAP5]
      	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69) [jboss-seam.jar:2.2.5.EAP5]
      	at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64) [jboss-seam.jar:2.2.5.EAP5]
      	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69) [jboss-seam.jar:2.2.5.EAP5]
      	at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45) [jboss-seam.jar:2.2.5.EAP5]
      	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69) [jboss-seam.jar:2.2.5.EAP5]
      	at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:178) [richfaces-impl.jar:3.3.1.SP3]
      	at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:295) [richfaces-impl.jar:3.3.1.SP3]
      	at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:373) [richfaces-impl.jar:3.3.1.SP3]
      	at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:500) [richfaces-impl.jar:3.3.1.SP3]
      	at org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:56) [jboss-seam.jar:2.2.5.EAP5]
      	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69) [jboss-seam.jar:2.2.5.EAP5]
      	at org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:60) [jboss-seam.jar:2.2.5.EAP5]
      	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69) [jboss-seam.jar:2.2.5.EAP5]
      	at org.jboss.seam.web.HotDeployFilter.doFilter(HotDeployFilter.java:53) [jboss-seam.jar:2.2.5.EAP5]
      	at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69) [jboss-seam.jar:2.2.5.EAP5]
      	at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158) [jboss-seam.jar:2.2.5.EAP5]
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:280) [jbossweb-7.0.10.Final-redhat-1.jar:]
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248) [jbossweb-7.0.10.Final-redhat-1.jar:]
      	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:275) [jbossweb-7.0.10.Final-redhat-1.jar:]
      	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:161) [jbossweb-7.0.10.Final-redhat-1.jar:]
      	at org.jboss.as.jpa.interceptor.WebNonTxEmCloserValve.invoke(WebNonTxEmCloserValve.java:50) [jboss-as-jpa-7.1.0.Final-redhat-1.jar:7.1.0.Final-redhat-1]
      	at org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:154) [jboss-as-web-7.1.0.Final-redhat-1.jar:7.1.0.Final-redhat-1]
      	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:155) [jbossweb-7.0.10.Final-redhat-1.jar:]
      	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) [jbossweb-7.0.10.Final-redhat-1.jar:]
      	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) [jbossweb-7.0.10.Final-redhat-1.jar:]
      	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:368) [jbossweb-7.0.10.Final-redhat-1.jar:]
      	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:877) [jbossweb-7.0.10.Final-redhat-1.jar:]
      	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:671) [jbossweb-7.0.10.Final-redhat-1.jar:]
      	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:930) [jbossweb-7.0.10.Final-redhat-1.jar:]
      	at java.lang.Thread.run(Thread.java:662) [rt.jar:1.6.0_30]
      Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'userService' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Initialization of bean failed; nested exception is org.springframework.aop.framework.AopConfigException: Could not generate CGLIB subclass of class [class org.jboss.seam.example.spring.UserService]: Common causes of this problem include using a final class or a non-visible class; nested exception is net.sf.cglib.core.CodeGenerationException: java.lang.reflect.InvocationTargetException-->null
      	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:480) [spring.jar:2.5.6.SEC02]
      	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409) [spring.jar:2.5.6.SEC02]
      	at java.security.AccessController.doPrivileged(Native Method) [rt.jar:1.6.0_30]
      	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380) [spring.jar:2.5.6.SEC02]
      	at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264) [spring.jar:2.5.6.SEC02]
      	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) [spring.jar:2.5.6.SEC02]
      	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261) [spring.jar:2.5.6.SEC02]
      	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185) [spring.jar:2.5.6.SEC02]
      	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164) [spring.jar:2.5.6.SEC02]
      	at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:880) [spring.jar:2.5.6.SEC02]
      	at org.springframework.web.jsf.DelegatingVariableResolver.resolveSpringBean(DelegatingVariableResolver.java:138) [spring.jar:2.5.6.SEC02]
      	at org.springframework.web.jsf.DelegatingVariableResolver.resolveVariable(DelegatingVariableResolver.java:111) [spring.jar:2.5.6.SEC02]
      	at com.sun.faces.el.VariableResolverChainWrapper.getValue(VariableResolverChainWrapper.java:114) [jsf-impl-1.2_15-b01-redhat-1.jar:1.2_15-20111208-SNAPSHOT]
      	at com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:173) [jsf-impl-1.2_15-b01-redhat-1.jar:1.2_15-20111208-SNAPSHOT]
      	at com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:200) [jsf-impl-1.2_15-b01-redhat-1.jar:1.2_15-20111208-SNAPSHOT]
      	at org.jboss.el.parser.AstIdentifier.getValue(AstIdentifier.java:44) [jboss-el.jar:1.0_02.CR6]
      	at org.jboss.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186) [jboss-el.jar:1.0_02.CR6]
      	at org.jboss.seam.core.Expressions$1.getValue(Expressions.java:157) [jboss-seam.jar:2.2.5.EAP5]
      	at org.jboss.seam.Component.getValueToInject(Component.java:2318) [jboss-seam.jar:2.2.5.EAP5]
      	at org.jboss.seam.Component.injectAttributes(Component.java:1739) [jboss-seam.jar:2.2.5.EAP5]
      	at org.jboss.seam.Component.inject(Component.java:1557) [jboss-seam.jar:2.2.5.EAP5]
      	at org.jboss.seam.core.BijectionInterceptor.aroundInvoke(BijectionInterceptor.java:61) [jboss-seam.jar:2.2.5.EAP5]
      	at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68) [jboss-seam.jar:2.2.5.EAP5]
      	at org.jboss.seam.core.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:44) [jboss-seam.jar:2.2.5.EAP5]
      	at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68) [jboss-seam.jar:2.2.5.EAP5]
      	at org.jboss.seam.core.SynchronizationInterceptor.aroundInvoke(SynchronizationInterceptor.java:32) [jboss-seam.jar:2.2.5.EAP5]
      	at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68) [jboss-seam.jar:2.2.5.EAP5]
      	at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:107) [jboss-seam.jar:2.2.5.EAP5]
      	at org.jboss.seam.intercept.JavaBeanInterceptor.interceptInvocation(JavaBeanInterceptor.java:185) [jboss-seam.jar:2.2.5.EAP5]
      	at org.jboss.seam.intercept.JavaBeanInterceptor.invoke(JavaBeanInterceptor.java:103) [jboss-seam.jar:2.2.5.EAP5]
      	at org.jboss.seam.example.spring.LoginAction_$$_javassist_seam_2.login(LoginAction_$$_javassist_seam_2.java) [classes:]
      	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.6.0_30]
      	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [rt.jar:1.6.0_30]
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [rt.jar:1.6.0_30]
      	at java.lang.reflect.Method.invoke(Method.java:597) [rt.jar:1.6.0_30]
      	at org.jboss.el.util.ReflectionUtil.invokeMethod(ReflectionUtil.java:335) [jboss-el.jar:1.0_02.CR6]
      	at org.jboss.el.util.ReflectionUtil.invokeMethod(ReflectionUtil.java:348) [jboss-el.jar:1.0_02.CR6]
      	at org.jboss.el.parser.AstPropertySuffix.invoke(AstPropertySuffix.java:58) [jboss-el.jar:1.0_02.CR6]
      	at org.jboss.el.parser.AstValue.invoke(AstValue.java:96) [jboss-el.jar:1.0_02.CR6]
      	at org.jboss.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:276) [jboss-el.jar:1.0_02.CR6]
      	at com.sun.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:68) [jsf-facelets.jar:1.1.15.B1-patch-01]
      	at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:88) [jsf-api-1.2_15-b01-redhat-1.jar:1.2_15-20111208-SNAPSHOT]
      	... 46 more
      Caused by: org.springframework.aop.framework.AopConfigException: Could not generate CGLIB subclass of class [class org.jboss.seam.example.spring.UserService]: Common causes of this problem include using a final class or a non-visible class; nested exception is net.sf.cglib.core.CodeGenerationException: java.lang.reflect.InvocationTargetException-->null
      	at org.springframework.aop.framework.Cglib2AopProxy.getProxy(Cglib2AopProxy.java:207) [spring.jar:2.5.6.SEC02]
      	at org.springframework.aop.framework.ProxyFactory.getProxy(ProxyFactory.java:110) [spring.jar:2.5.6.SEC02]
      	at org.springframework.aop.framework.autoproxy.AbstractAutoProxyCreator.createProxy(AbstractAutoProxyCreator.java:490) [spring.jar:2.5.6.SEC02]
      	at org.springframework.aop.framework.autoproxy.AbstractAutoProxyCreator.wrapIfNecessary(AbstractAutoProxyCreator.java:365) [spring.jar:2.5.6.SEC02]
      	at org.springframework.aop.framework.autoproxy.AbstractAutoProxyCreator.postProcessAfterInitialization(AbstractAutoProxyCreator.java:325) [spring.jar:2.5.6.SEC02]
      	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsAfterInitialization(AbstractAutowireCapableBeanFactory.java:361) [spring.jar:2.5.6.SEC02]
      	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1344) [spring.jar:2.5.6.SEC02]
      	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:473) [spring.jar:2.5.6.SEC02]
      	... 87 more
      Caused by: net.sf.cglib.core.CodeGenerationException: java.lang.reflect.InvocationTargetException-->null
      	at net.sf.cglib.core.AbstractClassGenerator.create(AbstractClassGenerator.java:237) [cglib.jar:2.2]
      	at net.sf.cglib.proxy.Enhancer.createHelper(Enhancer.java:377) [cglib.jar:2.2]
      	at net.sf.cglib.proxy.Enhancer.create(Enhancer.java:285) [cglib.jar:2.2]
      	at org.springframework.aop.framework.Cglib2AopProxy.getProxy(Cglib2AopProxy.java:201) [spring.jar:2.5.6.SEC02]
      	... 94 more
      Caused by: java.lang.reflect.InvocationTargetException
      	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.6.0_30]
      	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [rt.jar:1.6.0_30]
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [rt.jar:1.6.0_30]
      	at java.lang.reflect.Method.invoke(Method.java:597) [rt.jar:1.6.0_30]
      	at net.sf.cglib.core.ReflectUtils.defineClass(ReflectUtils.java:384) [cglib.jar:2.2]
      	at net.sf.cglib.core.AbstractClassGenerator.create(AbstractClassGenerator.java:219) [cglib.jar:2.2]
      	... 97 more
      Caused by: java.lang.SecurityException: class "org.jboss.seam.example.spring.UserService$$EnhancerByCGLIB$$7d6c3d12"'s signer information does not match signer information of other classes in the same package
      	at java.lang.ClassLoader.checkCerts(ClassLoader.java:806) [rt.jar:1.6.0_30]
      	at java.lang.ClassLoader.preDefineClass(ClassLoader.java:487) [rt.jar:1.6.0_30]
      	at java.lang.ClassLoader.defineClassCond(ClassLoader.java:625) [rt.jar:1.6.0_30]
      	at java.lang.ClassLoader.defineClass(ClassLoader.java:615) [rt.jar:1.6.0_30]
      	... 103 more
      

      Note: The cglib can be unsigned with

      zip -d cglib.jar META-INF/JBOSSCOD\*
      

        Gliffy Diagrams

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  manaRH Marek Novotny
                  Reporter:
                  rsmeral Ron Šmeral
                  Writer:
                  Petr Penicka
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  5 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved: