dependency on hibernate in 1.1.3.Final
captainvoid Nov 10, 2011 8:29 AMHi,
I just tried the new Weld 1.1.3.Final release and noticed several ClassNotFoundExceptions on container startup. Weld complains about missing drools and hibernate classes. I don't use database persistence nor transactions, so I don't have hibernate in my classpath (my app is running on Tomcat 6). I'm not sure if this a Seam Faces or Weld issue. I didn't change the Seam Faces jars. The exceptions were not thrown using Weld 1.1.2.Final.
Nevertheless, the web app is deployed and works. Just these exceptions are a bit annoying.
Here the stacktrace:
INFO: Tomcat 6 detected, CDI injection will be available in Servlets and Filters. Injection into Listeners is not supported [11:59:23,433] org.jboss.solder.config.xml.bootstrap.XmlConfigExtension [INFO] [] Preventing installation of default bean: org.jboss.seam.faces.transaction.TransactionPhaseListener 10-nov-2011 11:59:24 org.jboss.weld.bootstrap.BeanDeployer addClass INFO: WELD-000119 Not generating any bean definitions from org.jboss.seam.security.permission.SecurityRuleLoader because of underlying class loading error 10-nov-2011 11:59:24 org.jboss.weld.bootstrap.BeanDeployer addClass INFO: catching org.jboss.weld.resources.spi.ResourceLoadingException: Error loading class org.jboss.seam.security.permission.SecurityRuleLoader at org.jboss.weld.resources.ClassTransformer.loadClass(ClassTransformer.java:154) at org.jboss.weld.bootstrap.BeanDeployer.addClass(BeanDeployer.java:86) at org.jboss.weld.bootstrap.BeanDeployer.addClasses(BeanDeployer.java:115) at org.jboss.weld.bootstrap.BeanDeployment.createBeans(BeanDeployment.java:168) at org.jboss.weld.bootstrap.WeldBootstrap.deployBeans(WeldBootstrap.java:331) at org.jboss.weld.environment.servlet.Listener.contextInitialized(Listener.java:182) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4135) at org.apache.catalina.core.StandardContext.start(StandardContext.java:4630) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) at org.apache.catalina.core.StandardHost.start(StandardHost.java:785) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:445) at org.apache.catalina.core.StandardService.start(StandardService.java:519) at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) at org.apache.catalina.startup.Catalina.start(Catalina.java:581) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414) Caused by: java.lang.NoClassDefFoundError: Lorg/drools/KnowledgeBase; at java.lang.Class.getDeclaredFields0(Native Method) at java.lang.Class.privateGetDeclaredFields(Unknown Source) at java.lang.Class.getDeclaredFields(Unknown Source) at org.jboss.weld.util.reflection.SecureReflections$4.work(SecureReflections.java:102) at org.jboss.weld.util.reflection.SecureReflections$4.work(SecureReflections.java:99) at org.jboss.weld.util.reflection.SecureReflectionAccess.run(SecureReflectionAccess.java:52) at org.jboss.weld.util.reflection.SecureReflectionAccess.runAndWrap(SecureReflectionAccess.java:63) at org.jboss.weld.util.reflection.SecureReflections.getDeclaredFields(SecureReflections.java:99) at org.jboss.weld.introspector.jlr.WeldClassImpl.<init>(WeldClassImpl.java:153) at org.jboss.weld.introspector.jlr.WeldClassImpl.of(WeldClassImpl.java:118) at org.jboss.weld.resources.ClassTransformer$TransformTypeToWeldClass.apply(ClassTransformer.java:48) at org.jboss.weld.resources.ClassTransformer$TransformTypeToWeldClass.apply(ClassTransformer.java:39) at com.google.common.collect.ComputingConcurrentHashMap.compute(ComputingConcurrentHashMap.java:206) at com.google.common.collect.ComputingConcurrentHashMap.apply(ComputingConcurrentHashMap.java:100) at com.google.common.collect.MapMaker$ComputingMapAdapter.get(MapMaker.java:515) at org.jboss.weld.resources.ClassTransformer.loadClass(ClassTransformer.java:151) ... 20 more Caused by: java.lang.ClassNotFoundException: org.drools.KnowledgeBase at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1645) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1491) ... 36 more [11:59:24,450] org.jboss.solder.core.CoreExtension [INFO] [] Preventing class org.jboss.seam.international.locale.LocaleConfiguration from being installed as bean due to @Veto annotation [11:59:25,004] org.jboss.solder.core.CoreExtension [INFO] [] Preventing class com.safelayer.trustedx.console.persistence.EagerLoadingStrategy from being installed as bean due to @Veto annotation 10-nov-2011 11:59:25 org.jboss.weld.bootstrap.BeanDeployer addClass INFO: WELD-000119 Not generating any bean definitions from org.jboss.seam.security.permission.RuleBasedPermissionResolver because of underlying class loading error 10-nov-2011 11:59:25 org.jboss.weld.bootstrap.BeanDeployer addClass INFO: catching org.jboss.weld.resources.spi.ResourceLoadingException: Error loading class org.jboss.seam.security.permission.RuleBasedPermissionResolver at org.jboss.weld.resources.ClassTransformer.loadClass(ClassTransformer.java:154) at org.jboss.weld.bootstrap.BeanDeployer.addClass(BeanDeployer.java:86) at org.jboss.weld.bootstrap.BeanDeployer.addClasses(BeanDeployer.java:115) at org.jboss.weld.bootstrap.BeanDeployment.createBeans(BeanDeployment.java:168) at org.jboss.weld.bootstrap.WeldBootstrap.deployBeans(WeldBootstrap.java:331) at org.jboss.weld.environment.servlet.Listener.contextInitialized(Listener.java:182) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4135) at org.apache.catalina.core.StandardContext.start(StandardContext.java:4630) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) at org.apache.catalina.core.StandardHost.start(StandardHost.java:785) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:445) at org.apache.catalina.core.StandardService.start(StandardService.java:519) at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) at org.apache.catalina.startup.Catalina.start(Catalina.java:581) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414) Caused by: java.lang.NoClassDefFoundError: org/drools/runtime/ObjectFilter at java.lang.Class.getDeclaredFields0(Native Method) at java.lang.Class.privateGetDeclaredFields(Unknown Source) at java.lang.Class.getDeclaredFields(Unknown Source) at org.jboss.weld.util.reflection.SecureReflections$4.work(SecureReflections.java:102) at org.jboss.weld.util.reflection.SecureReflections$4.work(SecureReflections.java:99) at org.jboss.weld.util.reflection.SecureReflectionAccess.run(SecureReflectionAccess.java:52) at org.jboss.weld.util.reflection.SecureReflectionAccess.runAndWrap(SecureReflectionAccess.java:63) at org.jboss.weld.util.reflection.SecureReflections.getDeclaredFields(SecureReflections.java:99) at org.jboss.weld.introspector.jlr.WeldClassImpl.<init>(WeldClassImpl.java:153) at org.jboss.weld.introspector.jlr.WeldClassImpl.of(WeldClassImpl.java:118) at org.jboss.weld.resources.ClassTransformer$TransformTypeToWeldClass.apply(ClassTransformer.java:48) at org.jboss.weld.resources.ClassTransformer$TransformTypeToWeldClass.apply(ClassTransformer.java:39) at com.google.common.collect.ComputingConcurrentHashMap.compute(ComputingConcurrentHashMap.java:206) at com.google.common.collect.ComputingConcurrentHashMap.apply(ComputingConcurrentHashMap.java:100) at com.google.common.collect.MapMaker$ComputingMapAdapter.get(MapMaker.java:515) at org.jboss.weld.resources.ClassTransformer.loadClass(ClassTransformer.java:151) ... 20 more Caused by: java.lang.ClassNotFoundException: org.drools.runtime.ObjectFilter at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1645) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1491) ... 36 more 10-nov-2011 11:59:25 org.jboss.weld.bootstrap.BeanDeployer addClass INFO: WELD-000119 Not generating any bean definitions from org.jboss.seam.transaction.HibernateTransaction because of underlying class loading error 10-nov-2011 11:59:25 org.jboss.weld.bootstrap.BeanDeployer addClass INFO: catching org.jboss.weld.resources.spi.ResourceLoadingException: Error loading class org.jboss.seam.transaction.HibernateTransaction at org.jboss.weld.resources.ClassTransformer.loadClass(ClassTransformer.java:154) at org.jboss.weld.bootstrap.BeanDeployer.addClass(BeanDeployer.java:86) at org.jboss.weld.bootstrap.BeanDeployer.addClasses(BeanDeployer.java:115) at org.jboss.weld.bootstrap.BeanDeployment.createBeans(BeanDeployment.java:168) at org.jboss.weld.bootstrap.WeldBootstrap.deployBeans(WeldBootstrap.java:331) at org.jboss.weld.environment.servlet.Listener.contextInitialized(Listener.java:182) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4135) at org.apache.catalina.core.StandardContext.start(StandardContext.java:4630) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) at org.apache.catalina.core.StandardHost.start(StandardHost.java:785) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:445) at org.apache.catalina.core.StandardService.start(StandardService.java:519) at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) at org.apache.catalina.startup.Catalina.start(Catalina.java:581) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414) Caused by: java.lang.NoClassDefFoundError: Lorg/hibernate/Session; at java.lang.Class.getDeclaredFields0(Native Method) at java.lang.Class.privateGetDeclaredFields(Unknown Source) at java.lang.Class.getDeclaredFields(Unknown Source) at org.jboss.weld.util.reflection.SecureReflections$4.work(SecureReflections.java:102) at org.jboss.weld.util.reflection.SecureReflections$4.work(SecureReflections.java:99) at org.jboss.weld.util.reflection.SecureReflectionAccess.run(SecureReflectionAccess.java:52) at org.jboss.weld.util.reflection.SecureReflectionAccess.runAndWrap(SecureReflectionAccess.java:63) at org.jboss.weld.util.reflection.SecureReflections.getDeclaredFields(SecureReflections.java:99) at org.jboss.weld.introspector.jlr.WeldClassImpl.<init>(WeldClassImpl.java:153) at org.jboss.weld.introspector.jlr.WeldClassImpl.of(WeldClassImpl.java:118) at org.jboss.weld.resources.ClassTransformer$TransformTypeToWeldClass.apply(ClassTransformer.java:48) at org.jboss.weld.resources.ClassTransformer$TransformTypeToWeldClass.apply(ClassTransformer.java:39) at com.google.common.collect.ComputingConcurrentHashMap.compute(ComputingConcurrentHashMap.java:206) at com.google.common.collect.ComputingConcurrentHashMap.apply(ComputingConcurrentHashMap.java:100) at com.google.common.collect.MapMaker$ComputingMapAdapter.get(MapMaker.java:515) at org.jboss.weld.resources.ClassTransformer.loadClass(ClassTransformer.java:151) ... 20 more Caused by: java.lang.ClassNotFoundException: org.hibernate.Session at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1645) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1491) ... 36 more
This is my beans.xml where I disable transactions:
<t:SeSynchronizations> <s:modifies /> </t:SeSynchronizations> <t:UTTransaction> <s:modifies /> </t:UTTransaction> <sc:Veto> <s:Qualifier /> </sc:Veto> <ft:TransactionPhaseListener> <s:replaces /> <sc:Veto /> </ft:TransactionPhaseListener>
Thanks for any hints!